(这是使用 gradle 2.4)
对于我的一个项目,分为几个子模块,我使用了shadow 插件,它非常适合我的需求;它有一个 main,并且根据插件自述文件的建议,我将应用程序插件与它结合使用,以便在清单中生成 Main-Class,一切正常。
现在,这是一个 SonarQube 插件项目,我还使用(成功!)gradle sonar packagin plugin。这个插件的作用是,当你./gradlew build
生成声纳插件而不是“常规”jar时。
我希望在这里为我的子项目做同样的事情,除了我希望它只生成影子 jar 插件而不是“常规”插件......现在我使用这个简单的文件生成两者:
buildscript {
repositories {
jcenter();
}
dependencies {
classpath(group: "com.github.jengelman.gradle.plugins",
name:"shadow", version:"1.2.1");
}
}
apply(plugin: "application");
apply(plugin: "com.github.johnrengelman.shadow");
dependencies {
// whatever
}
mainClassName = //whatever
artifacts {
shadowJar;
}
// Here is the hack...
build.dependsOn(shadowJar);
如何修改此文件以便只生成影子 jar 而不是常规 jar?