从build.sbt读取application.conf

时间:2015-08-05 08:52:57

标签: scala sbt

我发现了很多类似的问题,但其中some没有得到答复,others对我不起作用。
我的任务是从build.sbt读取application.conf,将所有配置保存在一个地方。但我的build.sbt代码

import com.typesafe.config._

val conf = com.typesafe.config.ConfigFactory.parseFile(new File("conf/application.conf")).resolve()

version := conf.getString("app.version")

不编译错误

error: object typesafe is not a member of package com

如何解决这个问题?

2 个答案:

答案 0 :(得分:6)

要完成这项工作,重要的是要知道sbt项目具有递归结构,因此当您运行sbt时,实际上启动了一个项目,该项目在根项目中具有project文件夹的根文件夹。

鉴于此,为了解决您的问题,您还需要为您的sbt项目添加typesafe-config作为库依赖项;为此,在根项目的build.sbt文件夹中添加project,并像往常一样在那里指定依赖项(即libraryDependencies += ...)。

答案 1 :(得分:2)

在您的代码

中使用此功能
import com.typesafe.config.{Config, ConfigFactory}
private val config = ConfigFactory.load()

并在build.sbt文件中

libraryDependencies += "com.typesafe" % "config" % "1.3.0"