12
javaと同様にドットでパッケージを指定してGroovyクラスを実行する方法はありますか?パッケージ内のGroovyクラスをコマンドラインから実行する
例:私は仕事への最後のコマンドを期待していた
package my.package
class MyClass {
static void main(String[] args) {
println "ok"
}
}
> cd my/package my/package> groovy MyClass ok > cd ../.. > groovy my/package/MyClass.groovy ok > groovy my/package/MyClass ok > groovy my.package.MyClass Caught: java.io.FileNotFoundException: my.package.MyClass
:./my/package/MyClass.groovyファイル。私はクラスパスを設定するさまざまな方法を試してみましたが、無駄です。
正解のように聞こえるが、うまくいきません。私は "my.package"を例として使用しました。とにかく、受け入れ可能なパッケージ名であってもgroovycでコンパイルした後でも、動作しません。 groovyc my/some/MyClass.groovy エクスポートCLASSPATH =。 lsの私の/いくつか/ MyClass.class 私の/いくつか/ MyClass.classキャッチ グルーヴィーmy.some.MyClass :java.io.FileNotFoundException:/Users/olivier/my.some.MyClass(/ユーザ/オリヴィエ/ my.some.MyClass) ? –
あなたは正しいです、私はそれを見逃したか分かりません。不正な気にならない場合は、groovyコマンドをjava + classpath: java -cp /usr/share/java/groovy/embeddable/groovy-all-1.6.3.jar:で置き換えることができます。 my.some.MyClass たとえば、 'g_java'にエイリアスを追加して、冗長性を少なくすることができます。 –
ありがとうございます。できます。だから、私の元々の質問に対する答えは:いいえ、Groovyではこのように動作しません。 javacとjavaを使用する必要があります。 –