Zso*_*olt 6 java build multi-project gradle
我有一个使用 gradle 管理的多项目结构。所有java子项目都有这个jar块:
def main_class = "foo.Main"
jar {
manifest {
attributes 'Main-Class': main_class
}
}
Run Code Online (Sandbox Code Playgroud)
所以我决定将 jar 块移动到根项目,并且只def main_class在子项目中使用,但无论我如何定义变量main_class,它都不起作用。我也尝试project.ext过。properties {}
我有一个任务,称为dist它与project.ext:
根项目:
subprojects {
task dist(dependsOn: jar) << {
copy {
from('build/libs') {
include (build_jar)
}
into('.')
rename(build_jar, app_jar)
}
}
}
Run Code Online (Sandbox Code Playgroud)
一个子项目:
project.ext {
build_jar = "..."
app_jar = "..."
}
Run Code Online (Sandbox Code Playgroud)
如何定义与任务一起使用的jar变量dist?
你可以这样做:
ext {
main_class = 'com.Main'
}
subprojects {
apply plugin: 'java'
jar {
manifest {
attributes 'Main-Class': main_class
}
}
}
Run Code Online (Sandbox Code Playgroud)
在PROJECT_ROOT/build.gradle文件中。
| 归档时间: |
|
| 查看次数: |
7858 次 |
| 最近记录: |