【发布时间】:2018-01-08 09:39:45
【问题描述】:
我们在基于 sbt 的项目中有多个项目(如下所示),并探索如何在运行时从 scala 对象中获取应用程序 jar 名称,例如“project1-v1.jar”。
使用'sbt assembly'
为每个项目创建单独的jar项目结构
Project1
-- main
| | |-- resources
| | |-- scala
| | |-- Test.scala
import project1._ //=> Is is possible to load from ProjectPlugin.scala?
val JarName = s"$name-$version"
Project2
.
.
project
ProjectPlugin.scala
import sbt._
import sbt._
object project1{
name := "project1",
version := "v1"
}
object project2{
name := "project2",
version := "v2"
}
.
.
build.sbt
是否可以从 ProjectPlugin.scala 中提取名称/版本,因为这是我们维护每个 sprint 都会更改的版本的 1 个地方。我看不到压缩在 jar 文件中的 ProjectPlugin.scala,所以有点怀疑
或者有没有其他更清洁的替代方案来实现这一目标!
【问题讨论】: