【发布时间】:2017-05-02 14:24:20
【问题描述】:
我有以下 2 个项目彼此相邻放置在某个文件夹中,我想将来自非 gradle 项目的特定源包含到该项目中,结构如下。
rootfolder/
my-gradle-project/
src/main/java
build.gradle
my-non-gradle-project/
src/main/java/com/example/utils
在 build.gradle 为什么以下不起作用?我有什么选择?
此外,我需要包含来自非 gradle 项目的特定 java 源代码。
build.gradle
sourceSets.main.java.srcDirs = [
'src/main/java',
'../my-non-gradle-project/src/main/java/com/example/util')]
【问题讨论】:
-
发现它实际上工作正常,除了包都搞砸了。
com/example/util中的源显示为默认包。所以这现在归结为问题的另一半——如何在不混乱的情况下包含特定的源。 -
使用
'../my-non-gradle-project/src/main/java'作为您的第二条路径? -
src/main/java的问题是它将包括所有来源。我只想要特定的路径。这是一个我无法控制的奇怪项目,否则本可以做得更多。 -
要获得正确的包,您必须使用
src路径。看起来 SourceDirectorySet 包含和排除过滤器docs.gradle.org/current/javadoc/org/gradle/api/file/…。过滤器可能适用于您的两条路径,您可以使用单独的源集来规避。 -
单独的 sourceSets 似乎是一个最佳选择。
标签: java gradle gradle-eclipse