这是我的gradle构建脚本.
apply plugin: 'groovy'
project.group = "test.tree"
archivesBaseName = "tree"
project.version = "1.0"
manifest.mainAttributes("Main-Class" : "test.tree.App")
sourceCompatibility=1.6
targetCompatibility=1.6
repositories {
mavenCentral()
}
dependencies {
groovy group: 'org.codehaus.groovy', name: 'groovy', version: '1.8.6'
testCompile group: 'junit', name: 'junit', version: '4.8.2'
}
Run Code Online (Sandbox Code Playgroud)
这编译得很好
问题是我无法运行创建的JAR,我得到一个例外
java.lang.NoClassDefFoundError: groovy/lang/GroovyObject
所以我猜groovy插件不包含JAR中的所有必要类.
如何创建一个独立的JAR,我可以简单地运行;-)
Ben*_*hko 48
您正在寻找的是应用程序插件,它允许您构建一个独立的JVM应用程序,包括所有依赖项和运行脚本.
apply plugin:'application'
mainClassName = 'test.tree.App'
Run Code Online (Sandbox Code Playgroud)
编辑:
这应该创造你想要的uberjar:
task uberjar(type: Jar) {
from files(sourceSets.main.output.classesDir)
from configurations.runtime.asFileTree.files.collect { zipTree(it) }
manifest {
attributes 'Main-Class': 'test.tree.App'
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
22780 次 |
| 最近记录: |