2

Gradleで基本的なビルドをしようとしています。次の場合でもgradle -v失敗します。

$ gradle -v

FAILURE: Build aborted because of an internal error.

* What went wrong:
Build aborted because of an unexpected internal error. Please file an issue at: http://www.gradle.org.

* Try:
Run with --debug option to get additional debug info.

* Exception is:
java.lang.NoClassDefFoundError: groovy/lang/GroovySystem
    at org.gradle.util.GradleVersion.prettyPrint(GradleVersion.java:183)
    at org.gradle.launcher.CommandLineActionFactory$ShowVersionAction.run(CommandLineActionFactory.java:181)
    at org.gradle.launcher.CommandLineActionFactory$ActionAdapter.execute(CommandLineActionFactory.java:199)
    at org.gradle.launcher.CommandLineActionFactory$ActionAdapter.execute(CommandLineActionFactory.java:191)
(stacktrace snipped)
at org.gradle.launcher.ProcessBootstrap.run(ProcessBootstrap.java:28)
at org.gradle.launcher.GradleMain.main(GradleMain.java:24)
Caused by: java.lang.ClassNotFoundException: groovy.lang.GroovySystem
at java.net.URLClassLoader$1.run(URLClassLoader.java:217)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:205)
at java.lang.ClassLoader.loadClass(ClassLoader.java:321)
at java.lang.ClassLoader.loadClass(ClassLoader.java:266)
    ... 17 more

それで、「ああ、私のクラスパスは空です。groovyを追加しましょう」と思いました。

$ export CLASSPATH=/usr/share/gradle/lib/groovy-all.jar && echo $CLASSPATH
/usr/share/gradle/lib/groovy-all.jar

変わりはない。

価値があるのは、build.gradle です。

apply plugin: 'eclipse'
apply plugin: 'groovy'

repositories {
    mavenCentral()
}

dependencies {
    groovy group: 'org.codehaus.groovy', name: 'groovy', version: '1.7.10'
    testCompile group: 'junit', name: 'junit', version: '4.8.2'
}

私が見つけた唯一の関連するスタックオーバーフローの質問はこれで、グーグルはそれほど優れていませんでした。

gradleのインストール ドキュメントには、「Gradle には独自の Groovy ライブラリが付属しているため、Groovy をインストールする必要はありません」と記載されています。これは、クラスパスが不要であることを意味します。では、なぜ実行できないのでしょうか。

4

1 に答える 1

1

破損したGradleインストールのように聞こえます。gradle自分が思っているスクリプトを呼び出していないのかもしれません。

于 2012-04-15T06:08:06.880 に答える