【发布时间】:2018-06-06 07:12:04
【问题描述】:
我有一个混合的 Java/Scala Maven 多项目,我想迁移到 Gradle。
一些子项目只有 Java 代码,一些只有 Scala 代码,还有一些两者都有。在其中任何一个上应用 java 插件似乎都可以正常工作,但是由于缺少依赖项(Scala 语言),尝试在没有 Scala 代码的项目上应用 Scala 插件失败,这是有道理的。
现在,我希望将 Scala 插件应用于特定的子项目。不仅如此,我还需要应用以下配置,因为我的一些 Java 代码依赖于 Scala 代码:
apply plugin: 'scala'
sourceSets.main.scala.srcDir "src/main/java"
sourceSets.main.java.srcDirs = []
我还需要在 java 插件执行之前执行此操作(否则它将失败)。
我不想将这些行复制到每个特定的 Scala 子项目中,而只是在它们的构建文件中添加一个简单的属性(或类似的东西)。我怎样才能做到这一点?
【问题讨论】:
-
您可以将这些行放到一个单独的
.gradle文件中,然后在每个文件中使用apply from: myScalaStuff.gradle。 -
@OliverCharlesworth 这行得通,这实际上是我迄今为止的首选方式。您可以将其添加为答案吗?