我有一个Java代码,可以在build目录下生成一些文件。但是我希望它尊重Gradle的buildDir参数。
当我使用-PbuildDir从gradle.properties文件或命令行设置Gradle的buildDir参数时,我需要根据该参数在以下Java中更新“ build”字符串。
private List<String> getX() {
List<String> AList = new ArrayList<>();
AList.add("build/dir1/");
AList.add("build/dir2/");
return AList;
}
怎么可能?
-----更新-----
以上代码是库的一部分。 gradle项目稍后将使用此库。我想将gradle参数传递给库。
答案 0 :(得分:1)
此Java代码是否是gradle任务?如果是,那将会是
private List<String> getX() {
String buildDir = getProject().getBuildDir().getAbsolutePath();
return Arrays.asList(
buildDir + "/dir1",
buildDir + "/dir2"
);
}
但是,如果您想以“ Gradle方式”进行操作,您可能会这样做:
public FileCollection getX() {
String buildDir = getProject().getBuildDir().getAbsolutePath();
return getProject().files(
buildDir + "/dir1",
buildDir + "/dir2"
);
}