- ベストアンサー
JAVAの開発、実行環境について
最近JAVAの勉強をスタートした者です。 環境はWinXPSP3 SUN Microsystems から最新版のJDKをDLし、環境変数も設定、定番の初歩『HelloWorld』表示に着手しました。 public class helloworld { public static void main(String args[]) { System.out.println("Hello Java World !"); } } javac helloworld.java でコンパイル java helloworld で実行 java.lang.UnsupportedClassVersionError というエラーがきました。 調べたところ、開発環境と実行環境のバージョンの違いが原因とのこと。 javac 1.6.0_06 java version "1.4.2_03" となっていました。 さて、このjava versionがどうやっても更新できません。 JREの最新版をDLしても変わらず。 コントロールパネルのJAVA(TM)コントロールでは、JAVAアプリケーションランタイムの設定は、1.0.6_06としっかり最新版になっています。 コマンドで表示すると1.4、コンパネからだと1.6、これはどうして異なるのでしょうか?というかむしろ別のもの? またどのように設定したら、問題が解決されるのでしょうか? よろしくお願いします。
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
ANo.3です。 PATHの設定ですが、Javaのパスが複数書かれているってことはありませんか? 一度PATHに書かれている全ての内容を見直してみてはどうでしょう。 パスに書かれているものはセミコロンで区切られているうちの 最初にヒットするものを優先するそうです。 (参考: http://tyche.pu-toyama.ac.jp/~ko-ji/java-in/) Javacは SDK1.6.0_06にしか含まれないので、1.6.0_06でコンパイルされ ランタイムは1.4.2_03と1.6.0_06の2つあるので 最初に書かれた1.4.2_03で実行しようとすると想像しました。 1.4.2_03は、かなり普及しているランタイムなので 意識しなくてもずいぶん前からダウンロードして利用されていることと思います。
その他の回答 (4)
- oasis05
- ベストアンサー率30% (10/33)
まだいきませんか? 一度再起動してから実行してみてください。 これでいかないなら自分にはお手上げですね。 もっと詳しい方が現れるのを待つしかないですね。 アップデートがきちんとできているならパスが原因だと思うんですがね・・・
お礼
無事解決できました。 原因はやはり環境変数のPATHでした。 最新のJREより先に、旧バージョンのJREが指定されていたためでした。 お力添え、感謝いたします。 ありがとうございました。
- mako_sea
- ベストアンサー率47% (62/130)
環境設定の見直しをしてみてください。 とくにPATHの設定とJAVA_HOMEの設定あたりが怪しいです。
お礼
回答ありがとうございます。 システムの環境設定で PATH『C:\Program Files\Java\jdk1.6.0_06\bin\;』 JAVA_HOME『C:\Program Files\Java\jdk1.6.0_06;』 になっております。 PATH設定が間違っていたら、コンパイル自体が失敗し、このPATHでコンパイルは問題なく動いております。
- oasis05
- ベストアンサー率30% (10/33)
自分は最近はjava使ってないので少し調べてみましたが、 現在のバージョンだとJava Plug-inとは表示されないみたいですね。 すみません>< とりあえずまたコンパイルして実行してみてください。 Javaコンパネで1.6が有効になっていて実行したときにまたエラーが出るようなら、環境変数のパスが最新の場所に通ってないんだと思います。
お礼
1.6は有効になってます。そもそも他にバージョンが入っていないです。 環境変数は、システムの環境変数に CLASSPATH『C:\Program Files\Java\jre1.6.0_06\bin; C:\Program Files\Java\jdk1.6.0_06\jre\bin;』 でやってます。 問題ありますでしょうか?
- oasis05
- ベストアンサー率30% (10/33)
コンパネにJava Plug-inというのがありませんか? それで使用するランタイムのバージョンが選択できたと思います。 あとはキャッシュが有効になっているなら、キャッシュクリアしてください。 今後のためにキャッシュを有効は無効にしておいてもいいです。 話が変わりますがクラス名のイニシャルは大文字で書くのが慣例ですよー。
お礼
早い回答ありがとうございます。 JAVAコンパネに『Java Plug-in』はありません。 JAVAコンパネにあるのは、基本、アップデート、JAVA、セキュリティ、詳細の5つのタブで、 そのいずれにもJava Plug-inはありません。 インストールしたほうが良いのでしょうか? その場合、下記のURLでよろしいのでしょうか? http://java.sun.com/products/plugin/index_ja.html ちなみにキャッシュはクリア、無効にも設定しました。 クラス名も了解です。
お礼
ビンゴです!! 環境変数のPATHに C:\Oracle\product\10.1.0\Client_1\jre\1.4.2\bin\client; C:\Oracle\product\10.1.0\Client_1\jre\1.4.2\bin の記述が! これより先に、 C:\Program Files\Java\jre1.6.0_06\bin を書くことで、JAVA Version が1.6に更新されました! ありがとうございます! 無事解決しました!