
今macでJavaの勉強をしています。
ただ、コンパイル時に下記のようなエラーが出てしまうので、解決方法を教えて下さい!
----------------------------
javac sample.java というコマンドを打つと、
↓↓↓↓↓
sample.java:21: Dodai にアクセスできません。
クラスファイル /Library/Java/Extensions/dodai.jar(Dodai.class) は不正です。
クラスファイルのバージョン 50.0 は不正です。49.0 であるべきです。
削除するか、クラスパスの正しいサブディレクトリにあるかを確認してください。
Dodai fusen01 = new Dodai();
^
エラー 1 個
----------------------------
というエラーになります。
dodai.jarというのは、本に付いていたサンプルのjarファイルで、
保存場所は
「c:\ProgramFiles\Java\jdk1.6.0_01\jre\lib\ext」と
「c:\ProgramFiles\Java\jre1.6.0_01\lib\ext」に保存するよう書かれてました。
(私のPCがmacなので、/Library/Java/Extensions/に保存してます。)
また、本の解説では「JDK6u1」をインストールするように書かれてました。
エラーの原因はjavaのバージョンが違うのかな?と思い、このサイトを参考にして
javac -J-version というコマンドを打ってみたところ、
----------
java version "1.5.0_07"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_07-164
----------
というメッセージが流れ、また、
java -version というコマンドも打ってみたところ、上記と同じメッセージが流れました。
これはやはり、サンプルのdodai.jarファイルのバージョンが1.6であるのに、
私のPCのjavaのバージョンが1.5だからエラーが出ているという事でしょうか?(macではデフォルトでjavaが入っているので、そのまま使ってます。)
また、そうである場合、どのようにすれば上記のエラーは解消されるのでしょうか?
教えて下さい!
No.3
- 回答日時:
古いバージョンを削除しなくても通常はその分のディスクを無駄に消費する以上の不都合はないですけど、古いバージョンも使おうとするなら設定が面倒かもしれません。
新しくインストールしたもので環境変数などが上書きされていますので、古いバージョンを正しく動かすには起動時に環境変数を書き換えるなどしなければいけないと思います。Mac用JDK6はまだないんですね。ライブラリのソースコードがあったとしても旧バージョンでコンパイルできるようになっている保証はないので、ブートキャンプを使う方が正解でしょう。

No.2
- 回答日時:
Mac OS X用のJDK 6は、まだリリースされていません。
どうしてもというなら、FreeBSD用のJDK 6をMac OS Xに移植するプロジェクトが進められていますので、そちらを試してみるという手はあります。ただし、まだ試験段階ですのでおススメはできませんが。
http://landonf.bikemonkey.org/
もし、そのjarのソースコードがあるなら、そこからJDK 5で再コンパイルしてjarを作り直したほうが早いかと思います。
参考URL:http://landonf.bikemonkey.org/
ご丁寧にどうもありがとうございます!
>Mac OS X用のJDK 6は、まだリリースされていません。
なるほど、そういう事だったんですね。
新し目のmacでしたので、なぜ1.5なのか不思議に思ってました。
残念ながらソースコードは配布されておらず、また、購入した本が
基本的にそのjarファイルを使って進んでいくものですので、
ブートキャンプでXPを入れてJavaを進めていきたいと思います。
macでJavaは何かと面倒のような気もしますので。。。
ありがとうございました!!
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
EclipseでJavaコンパイラのバー...
-
CrystalReportsのバージョン確...
-
visual stadio 参照問題
-
Selenium/VBA/Chrome エラーで...
-
VC++もしくはMFCからEXCELをコ...
-
【javaコンパイル時のエラーに...
-
MSCOMCTL.OCXのアップデートの方法
-
VMwareの古いバージョンがダウ...
-
vba クリップボードクリアにつ...
-
JSPファイルで生じるエラーをど...
-
プログラミングのプの字も知り...
-
javaのジェネリックスでTとEの...
-
MSFormsとは何ですか?
-
IISワーカープロセスが原因でCP...
-
JAVAプログラムをWEB表示させる...
-
Javascriptで出来ること
-
Webアプリケーション
-
ウインドウズメディアプレーヤ...
-
C言語入門サイトについて
-
プラグインとパッチの違いは?
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
使用しているJUnitのバージョン...
-
MSCOMCTL.OCXのアップデートの方法
-
gitでバージョン指定してダウン...
-
CrystalReportsのバージョン確...
-
Selenium/VBA/Chrome エラーで...
-
EclipseでJavaコンパイラのバー...
-
【javaコンパイル時のエラーに...
-
visual stadio 参照問題
-
pukiwikiのサーバ移転について
-
Fetchについて
-
バイナリファイルの著作権など...
-
RichEdit
-
Java は「アップデータを自動...
-
VC++もしくはMFCからEXCELをコ...
-
C#VB、使用するFrameworkのバー...
-
J2EEとServletAPIとJSPのJDKの...
-
HP作成のおすすめ参考書
-
【旧バージョンのダウンロード】
-
Javaのバージョンアップにとも...
-
Unityでゲームを作るのってどの...
おすすめ情報