我正在尝试将单个模块项目转换为具有根聚合的两个模块.感觉像是正常的事情.
所以,为了简化我删除了我添加的第二个项目,但我做了类似的事情:
cd myproject
mkdir core
mv * core
Run Code Online (Sandbox Code Playgroud)
然后在myproject中添加一个build.sbt
lazy val root = project.in( file(".") ).aggregate(core)
lazy val core = project in file("core")
Run Code Online (Sandbox Code Playgroud)
但是,尝试构建核心我得到:
[myproject] /core/build.sbt:22:错误:找不到:值lessSettings seq(lessSettings:_*)
这是现在原始项目的project/plugins.sbt中添加的插件的设置
[myproject]/core/project/plugins.sbt
Run Code Online (Sandbox Code Playgroud)
怎么没有拿起来?我不能只在子模块中生活插件吗?cd:进入核心子模块并运行sbt它运行得很好.我必须将我的插件移动到root/project吗?相当不错,不是这样吗?
您的plugin.sbt文件将被忽略,因为您无法project在多项目构建的子项目中拥有子文件夹.
在多项目构建中,
该.sbt根项目的文件和所有.sbt各子项目的文件,是各部分单独构建定义.子项目中定义的设置只是自动作用于该项目.
由于只有一个构建定义,因此只有一个项目可以构建该构建定义,并且该project/项目位于根项目的文件夹中.project/子项目的所有文件夹都将被忽略.
在您的情况下,移动plugin.sbt到构建根project文件夹应该使您的插件再次出现.
此外,如果您只处理core项目,而不是sbt在核心中运行sbt,则可以在根项目中运行并键入project core"移动"(实际上,将您执行的所有操作)放到核心子项目中.
| 归档时间: |
|
| 查看次数: |
1404 次 |
| 最近记录: |