使用此文件的build.gradle:摇篮/ Groovy中/阴影项目创建可执行的JAR文件
plugins {
id 'groovy'
id 'com.github.johnrengelman.shadow' version '1.2.2'
}
repositories {
mavenCentral()
}
dependencies {
compile 'org.codehaus.groovy:groovy-all:2.4.4'
}
version = '0.1'
shadowJar {
mergeServiceFiles()
manifest {
attributes 'Main-Class': 'com.mycompany.tools.EncodeFile'
}
}
我得到一个基本上是空的.jar文件(264个字节)当我运行~/TOOLS/gradle-2.10/bin/gradle shadowJar
。
我期望它包含groovy.jar和我的.class文件。
在Web上查看示例时存在一些混淆,因为它似乎是插件{id ...}是新的首选语法,但示例较旧,并且不使用该语法。
目录结构:
./src/groovy/com/mycompany/tools/EncodeFile.groovy
./build.gradle
我猜想,我要么将我.groovy作为文件,或者,我需要修改的build.gradle指向常规文件。
我该如何解决这个问题,使得我得到一个像这样执行的.jar文件:
java -jar build/libs/EncodeFile.jar
?感谢您使用gradle构建自包含的.jar文件的任何其他提示。 Groovy和Java(以及混合)。
我可能会添加第三方.jar文件,我将要嵌入可执行jar。任何提示,将不胜感激。
什么是'干净的gradle的shadowJar'输出 –