Al-*_*far 3 java intellij-idea playframework sbt-buildinfo sbt-plugin
我认为这可能是新版本中出现的一个问题,无法解决为旧版本,我得到了带有sbt-buildinfo插件的PlayJava项目,这个问题确实很常见,因为IntelliJ一直说无法解决该符号
这是文件:
可以在IntelliJ Idea sbt托管的源文件中找到解决方案,并且在这里无法引用sbt-buildinfo生成的对象,但是提供的任何解决方案都不会对我有帮助:
真正奇怪的是,如果我“将目录取消标记为生成的源”,然后将该BuildInfo.scala文件手动移到程序包文件夹中buildpkg(而不是sbt-buildinfo程序包)到(我的自定义程序包),IntelliJ会看到该文件,但是此更改无用,因为该文件将再次生成,所有更改将被丢弃:
这是我的build.sbt:
lazy val root = (project in file(".")).enablePlugins(PlayJava, BuildInfoPlugin)
.settings(
buildInfoKeys := Seq[BuildInfoKey](name, version, scalaVersion, sbtVersion, buildInfoBuildNumber,
"hostname" -> java.net.InetAddress.getLocalHost.getHostName,
"gitHash" -> sys.env.getOrElse("BITBUCKET_COMMIT", "No BITBUCKET_COMMIT set")
),
buildInfoPackage := "buildpkg",
buildInfoOptions += BuildInfoOption.ToJson,
buildInfoOptions += BuildInfoOption.BuildTime
)
scalaVersion := "2.12.3"
Run Code Online (Sandbox Code Playgroud)
和我的plugins.sbt:
// The Play plugin
addSbtPlugin("com.typesafe.play" % "sbt-plugin" % "2.6.5")
addSbtPlugin("com.eed3si9n" % "sbt-buildinfo" % "0.7.0")
Run Code Online (Sandbox Code Playgroud)
所以我想念的是什么解决方案
在IntelliJ的sbt设置中,启用设置“使用sbt shell进行构建和导入”,因为仅在sbt运行构建时才生成源。
IntelliJ当前仅在生成的源位于正确的程序包目录中时才正确更新它们。对于sbt-buildinfo,添加设置
buildInfoUsePackageAsPath := true
给你build.sbt。
| 归档时间: |
|
| 查看次数: |
4857 次 |
| 最近记录: |