Ceylon Eclipse プラグインを使用して、単純な Hello World プログラムを作成しました。
誰かが問題をすぐに再現したい場合に備えて、ソースコードを次に示します。
shared void main() {
String omg = (process.arguments.first else "nothing");
print("You wrote ``omg``, you silly programmer!");
}
これで、このプログラムを Eclipse 内から問題なく実行できます。しかし、どうすれば端末から実行できますか?
私は Ceylon コマンド ライン ツールをインストールしていません。私が自分のプログラムを他の人に渡すとき、彼らも Ceylon をインストールする必要はありません。
クラスファイルは1つだけのようです:
~/workspace/saloon $ find . -type f -name "*.class"
./.exploded/main_.class
それを実行しようとすると、次のようになります。
~/workspace/saloon/.exploded $ java main_
Exception in thread "main" java.lang.NoClassDefFoundError: ceylon/language/process_
at main_.main(main.ceylon)
Caused by: java.lang.ClassNotFoundException: ceylon.language.process_
at java.net.URLClassLoader$1.run(URLClassLoader.java:372)
at java.net.URLClassLoader$1.run(URLClassLoader.java:361)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:360)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
... 1 more
Eclipse プロジェクトは、どのファイルにも依存していないようで、1 つのファイル.jar
のみに依存しているようですが、ファイルでは機能しません。ターミナルから Scala Eclipse プロジェクトを実行するのは、適切なファイルを用意するだけで簡単です。.car
java
.car
.jar
では、端末から Ceylon Eclipse プロジェクトを実行するにはどうすればよいjava
でしょうか。それともこれは不可能ですか?