- ベストアンサー
cygwinでjavaを実行するとエラー
- cygwinでjavaを実行するとエラーになってしまう場合の解決策について教えてください。
- cygwin上でjavaコマンドを実行する際に発生するエラーについて対処方法を教えてください。
- cygwinでパッケージに含まれるファイルを実行する際に注意すべきことについて教えてください。
- みんなの回答 (7)
- 専門家の回答
質問者が選んだベストアンサー
java -cp bin co.jp.test.HelloWorld でどうでしょうか。
その他の回答 (6)
- Tacosan
- ベストアンサー率23% (3656/15482)
あ, もちろん CLASSPATH を「適切に」設定してもいいです.
- Tacosan
- ベストアンサー率23% (3656/15482)
.... 「『パッケージ』に従って」配置しようよ.... cd bin; java co.jp.test.HelloWorld とか cd src; java co.jp.test.HelloWorld とかの結果は?
補足
以前にも書いてますが、これでは駄目ですね~。 再度確認しても同じエラーでした。
- Tacosan
- ベストアンサー率23% (3656/15482)
その HelloWorld.java とか HelloWorld.class はどのディレクトリにありますか? find . -name HelloWorld.class の結果はどうなります?
補足
$ find . -name HelloWorld.class ./bin/co/jp/test/HelloWorld.class ./src/co/jp/test/HelloWorld.class となります。 それぞれ直接HelloWorld.classファイルがあるディレクトリに移動して、 javaを実行してもエラーになります。
- XBG
- ベストアンサー率60% (493/820)
あれ?import java.io.*;が見当たりませんが…?
補足
import java.io.*; って必要ですか? 実際になくても、packageの宣言がなければ動きますし。。。
- Tacosan
- ベストアンサー率23% (3656/15482)
そのファイルがあるディレクトリまで移動「せず」に, パッケージを指定して java co.jp.test.HelloWorld としたら実行できない? でも, co.jp.test ってパッケージ名はなんか変だなぁ.
補足
駄目みたいです。。。 同じエラーになりました。 $ java co.jp.test.HelloWorld java.lang.NoClassDefFoundError: co/jp/test/HelloWorld Caused by: java.lang.ClassNotFoundException: co.jp.test.HelloWorld at java.net.URLClassLoader$1.run(Unknown Source) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(Unknown Source) at java.lang.ClassLoader.loadClass(Unknown Source) at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source) at java.lang.ClassLoader.loadClass(Unknown Source) Could not find the main class: co.jp.test.HelloWorld. Program will exit. Exception in thread "main"
- Tacosan
- ベストアンサー率23% (3656/15482)
「パッケージ」に従ってファイルを配置したらどうなりますか?
補足
一部誤記があり、すいません。 現状エラーとなっているのは、 「パッケージ」に従ってファイルを配置し、そのファイルがあるディレクトリまで移動してから、 java HelloWorld と実行しています。 また、java -versionもjavac -versionも正常に返ってきます。
補足
ありがとうございます。 うまくいきました。 根本原因がわかった気がします。 やはりclasspathですね。 それにしても、eclipseでの動作確認方法と、 cygwinでの動作確認する時の方法が異なって、手間を感じます。 (毎回、cygwin上のディレクトリにコピーしてきて、java実行) なにかうまいやり方はないでしょうかね。。。 また、ライブラリのCLASSPATHの設定方法でうまい方法があれば、 ご教授いただきたく。よろしくお願い致します。