1
我想編譯(用gradle)並執行(用java 1.8運行時)一個小的groovy程序(請參閱helloWorld.groovy ,下面)。不能運行一個jar文件,由groovy-code編譯用gradle構建
但是,當我嘗試調用它,我得到錯誤:無法找到或加載主類的helloWorld
我缺少什麼?
編譯:
lexu> gradle clean jar
:clean
:compileJava UP-TO-DATE
:compileGroovy UP-TO-DATE
:processResources UP-TO-DATE
:classes UP-TO-DATE
:jar
BUILD SUCCESSFUL
Total time: 0.555 secs
執行:
lexu> java -jar ./build/libs/helloWorld.jar
Error: Could not find or load main class helloWorld
helloWorld.groovy:
class helloWorld {
static void main(String[] args) {
println('Hello World');
}
}
的build.gradle:
apply plugin: 'groovy'
apply plugin: 'application'
mainClassName = "helloWorld"
archivesBaseName = 'helloWorld';
configurations {provided; inlib;}
repositories {mavenCentral()}
dependencies {compile 'org.codehaus.groovy:groovy-all:2.4.7'}
jar {
manifest {
attributes(
'Class-Path': configurations.compile.collect { it.getName() }.join(' '),
'Main-Class': 'helloWorld'
)
}
}
THANK YOU! (2)解決了我的問題,我創建了subdirs並移動了源文件。(1)是我會遵循的好建議(3),因爲groovy-jar在我的classpath中! (但後來我沒有提到) – lexu