config.ConfigException $ Missing:找不到关键'dev'的配置设置 - scala

时间:2017-04-27 19:57:23

标签: java scala bigdata

我正在使用Scala尝试一些简单的数据库操作。我的代码连接到mysql服务器的地方。

我在application.properties文件中定义了数据库详细信息,但在运行时我收到此错误

config.ConfigException$Missing: No configuration setting found for key 'dev'

我检查了所有可能的选项,但可以找到问题所在,有人可以帮我解决这个问题吗?

parsedConfig = ConfigFactory.parseFile(new File("src/main/resources/application.properties"))
    val prop = ConfigFactory.load(parsedConfig)
    val driver = "com.mysql.jdbc.Driver"
    val url = s"jdbc:mysql://" + prop.getConfig("dev").getString("host") +
              "/" + prop.getConfig("dev").getString("db")
    val user = prop.getConfig("dev").getString("user")
    val password = prop.getConfig("dev").getString("pw")

application.properties

dev.host=localhost
dev.db=retail_db
dev.user=root

1 个答案:

答案 0 :(得分:0)

要使用标准名称(即" application。{properties | conf}")访问标准位置的资源文件,只需写下:

val prop = ConfigFactory.load()

找不到配置文件的一个原因可能是,您有一个多模块项目并尝试访问子项目中的配置文件。然后,您必须添加子项目的目录名称。

B.t.w。一般代码不应该访问文件 src / main / resources,因为当您在IDE外部运行已编译的代码时,即在生产模式下,该目录将不存在。

要查看最终应用程序中的文件和目录,请执行' sbt compile'然后查看目录' target / scala-2.12 / classes'。