Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/scala/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Scala SBT项目应用程序配置文件_Scala_Sbt_Configuration Files - Fatal编程技术网

Scala SBT项目应用程序配置文件

Scala SBT项目应用程序配置文件,scala,sbt,configuration-files,Scala,Sbt,Configuration Files,我来自C#NET世界,在构建Scala项目时,我注意到在开源社区中有许多不同的方法。不管怎样,在.Net C#project中,我们有Web.config或App.config文件,这对于指定全局使用的应用程序密钥非常有用,也有助于为不同环境等进行转换 Scala SBT项目的等价物是什么?你知道一个存储连接字符串和其他应用程序设置的地方吗?我想你说的是application.conf。它可以在/src/main/resources或/src/test/resources中找到(分别影响主设置和

我来自C#NET世界,在构建Scala项目时,我注意到在开源社区中有许多不同的方法。不管怎样,在.Net C#project中,我们有
Web.config
App.config
文件,这对于指定全局使用的应用程序密钥非常有用,也有助于为不同环境等进行转换


Scala SBT项目的等价物是什么?你知道一个存储连接字符串和其他应用程序设置的地方吗?

我想你说的是
application.conf
。它可以在
/src/main/resources
/src/test/resources
中找到(分别影响主设置和测试设置)。如果
/src/test/resources
中不存在
application.conf
,则测试将使用主
application.conf

没有通用配置文件名。基本方法是使用
属性
,例如,请参阅并调用文件
您的应用程序名。属性
。但是有一个很受欢迎的图书馆叫做simply,我推荐它;如前所述,其配置文件的标准名称为

便利方法ConfigFactory.load()加载以下内容(首先列出的优先级较高):

  • 系统属性
  • application.conf(类路径上具有此名称的所有资源)
  • application.json(类路径上使用此名称的所有资源)
  • application.properties(类路径上具有此名称的所有资源)
  • reference.conf(类路径上具有此名称的所有资源)
其思想是,库和框架应该在jar中附带reference.conf。应用程序应该提供application.conf,或者如果它们想在单个JVM中创建多个配置,可以使用ConfigFactory.load(“myapp”)来加载它们自己的myapp.conf。(如果需要,应用程序也可以提供reference.conf,但您可能觉得没有必要将其与application.conf分开。)


正如@ashalynd的回答所说,为了让任何这样的库看到您的配置文件,它们应该进入
src/{main,test}/resources

是!唯一的问题是我的资源目录是空的,右键单击并在intelliJ的上下文菜单中选择“new”(新建)不会给我添加配置文件的选项。所以我想知道添加配置文件的正确方法是什么,或者我是否应该强制创建它。我是一个彻头彻尾的智囊团,用蛮力创造它。