1

組み込みハードウェアの jamvm で groovy を実行したかったのです。以下は私が試したものですが、何も機能しません。

1) $GROOVY_HOME/bin/groovy ...

JAVA_HOME が設定されていないと文句を言います。JamVm はスタンドアロンの実行可能ファイルであるため、可能であれば、JamVM で JAVA_HOME を設定するにはどうすればよいですか? 問題がそれを設定することで解決される場合は、簡単に解決できます。

2) jamvm -cp $GROOVY_HOME/embedded/embeddable/groovy-all-2.0.5.jar:. TestClass

http://groovy.codehaus.org/Embedding+Groovy (「完全な例」の部分)の例を実行したところ、次の例外が発生しました。同じ例を Mac で実行しましたが、問題ありませんでした。

Exception in thread "main" BUG! exception in phase 'semantic analysis' in source unit '/root/test/Tester.groovy' 0
at org.codehaus.groovy.control.CompilationUnit.applyToSourceUnits(CompilationUnit.java:907)
at org.codehaus.groovy.control.CompilationUnit.doPhaseOperation(CompilationUnit.java:566)
at org.codehaus.groovy.control.CompilationUnit.compile(CompilationUnit.java:515)
at groovy.lang.GroovyClassLoader.doParseClass(GroovyClassLoader.java:279)
at groovy.lang.GroovyClassLoader.parseClass(GroovyClassLoader.java:258)
at groovy.lang.GroovyClassLoader.parseClass(GroovyClassLoader.java:244)
at groovy.lang.GroovyClassLoader.parseClass(GroovyClassLoader.java:185)
at TestClass.main(TestClass.java:8)
Caused by: java.lang.ArrayIndexOutOfBoundsException: 0
at org.codehaus.groovy.vmplugin.v5.Java5.makeParameters(Java5.java:396)

3) やってみた

java -cp ../groovy-2.0.5/embeddable/groovy-all-2.0.5.jar groovy.lang.GroovyShe ll <script.groovy>

動作しませんでした、次のようになりました

java.lang.ExceptionInInitializerError at org.codehaus.groovy.reflection.ReflectionCache.getCachedClass(ReflectionCache.java:107)

jamvm で groovy を実行する方法を提案してください。ありがとう!

4

1 に答える 1

0

JAVA_HOME は環境変数です。これは、コマンド「export」を使用して設定できます。ExceptionInInitializerError は、クラスを作成できなかったことを意味します。問題を実際に知るには、埋め込み例外が必要です

于 2012-12-05T15:15:51.170 に答える