うちのPCでは確実にコンパイルが通って、実行までできたプログラムが他の人のPCではコンパイルが通らなかったり実行ができません。
実行する際には
javac nishi.java
java nishi
とやると以下のようなエラーがでて実行ができません(コンパイルは通ります。決してjava nishi.classとかjava nishi.javaといったお約束の間違いは行っていません)
Exception in thread "main"java.lang.NoClassDefFoundError:nishi
また違うファイルではこっちでコンパイルが通るのにあっちではコンパイルが通らなかったりします。バージョンが違うためでしょうか?僕のバージョンが1.5.08?で相手が1.4.2くらいです。だからコンパイルが通らないの?
A 回答 (4件)
- 最新から表示
- 回答順に表示
No.4
- 回答日時:
>古い1.3.0でコンパイルとおりました。
なぜか1.4.2では通りませんでした。それも「1.3.0」と「1.4.2」の「バージョンの違い」では?
エラー内容がわかりませんので、「想像」ですが。
今わかってる情報からは「バージョンの違い」としか判断できません。
javacのオプションに「-target」があるので、VMのバージョンを指定してみては?
詳細はドキュメントを読んで下さい。
No.3
- 回答日時:
>もしかして、
>java.exeがあるフォルダの中でプログラムのクラスファイルを
>実行するならCLASSPATHの設定云々は関係ないですか??
もし仮に、↑でうまくいっても、お奨めできませんね。
「CLASSPATH」の設定をちゃんとするか、EclipseなどのIDEを使用した方が良いです。
この回答への補足
コンパイルが通らない理由はバージョンの違いではないようです。
古い1.3.0でコンパイルとおりました。なぜか1.4.2では通りませんでした。
No.2
- 回答日時:
>>またコンパイルが通ったり、通らなかったりするのはバージョンの違いだと思います。
>そうかな?バージョンが違うからかな?
それとも、同じJavaのバージョンのマシンで
「まったく同じソース」がコンパイルが通ったり、通らなかったりする
のでしょうか?
それならJavaが壊れてる可能性が大なので、1度アンインストールして、もう1度インストールしましょう。
>クラスパスって、XPの場合なら
>コントロールパネル→パフォーマンスとメンテナンスでパスを通すっ
>てやつですよね?たとえばフォルダC:hogeにrr.exeファイルがあると
>きに
>C:hoge;というようにパスを設定するとコマンドプロンプトでどこから>でもrr.exeができるようになるあれですよね?
それは「環境変数のPATH」。
そっちじゃなくて、「環境変数のCLASSPATH」。
PATHはシステムがプログラムを探す場所を記述しておく環境変数で、
CLASSPATHはJavaがクラスを探す場所を記述しておく環境変数。
もしかして、
java.exeがあるフォルダの中でプログラムのクラスファイルを実行するならCLASSPATHの設定云々は関係ないですか??
No.1
- 回答日時:
おそらくExceptionの内容から「nishi.class」があるディレクトリに「CLASSPATH」が通ってないのが原因でしょう。
「CLASSPATH」に「.;」を追加すれば良いはずです。
またコンパイルが通ったり、通らなかったりするのはバージョンの違いだと思います。
「こっち」でコンパイルが通って、「あっち」でコンパイルが通らないのは、「Java 5.0(1.5)」から追加されたクラスorメソッドを使っているからでしょう。
そこらへんは「コンパイルエラー」の内容を見れば「どのクラス」「どのメソッド」がそれに該当するかわかりますので、Javadocなどを調べればすぐわかるでしょう。
この回答への補足
>またコンパイルが通ったり、通らなかったりするのはバージョンの違いだと思います。
そうかな?バージョンが違うからかな?
クラスパスって、XPの場合なら
コントロールパネル→パフォーマンスとメンテナンスでパスを通すってやつですよね?たとえばフォルダC:hogeにrr.exeファイルがあるときに
C:hoge;というようにパスを設定するとコマンドプロンプトでどこからでもrr.exeができるようになるあれですよね?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・人生のプチ美学を教えてください!!
- ・10秒目をつむったら…
- ・あなたの習慣について教えてください!!
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・【大喜利】【投稿~9/18】 おとぎ話『桃太郎』の知られざるエピソード
- ・街中で見かけて「グッときた人」の思い出
- ・「一気に最後まで読んだ」本、教えて下さい!
- ・幼稚園時代「何組」でしたか?
- ・激凹みから立ち直る方法
- ・1つだけ過去を変えられるとしたら?
- ・【あるあるbot連動企画】あるあるbotに投稿したけど採用されなかったあるある募集
- ・【あるあるbot連動企画】フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
- ・映画のエンドロール観る派?観ない派?
- ・海外旅行から帰ってきたら、まず何を食べる?
- ・誕生日にもらった意外なもの
- ・天使と悪魔選手権
- ・ちょっと先の未来クイズ第2問
- ・【大喜利】【投稿~9/7】 ロボットの住む世界で流行ってる罰ゲームとは?
- ・推しミネラルウォーターはありますか?
- ・都道府県穴埋めゲーム
- ・この人頭いいなと思ったエピソード
- ・準・究極の選択
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
javaが文字コードの影響でコン...
-
IIS環境でJAVAを使用したい
-
c++Builder ver6.0のパッケー...
-
javax.servlet は存在しません...
-
.jarファイルの中身って書き換...
-
Eclipse3.5EEでJavaのコンパイ...
-
ソースパスとクラスパスの違い...
-
eclipseの構文エラーについて
-
importしたパッケージが見つか...
-
packageとimportの関係のコンパ...
-
Javaのコンパイル結果が表示さ...
-
eclipseの設定のJREとコンパイ...
-
emacsでjavaをコンパイルする方法
-
Java 文字コードのエンコーディ...
-
JFreeChartの環境変数設定について
-
コンパイルができないのですが...
-
コンパイルが通らない
-
Eclipseで、プロジェクト名のと...
-
javaクラスファイルをEclipseで...
-
classファイルについて
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
.jarファイルの中身って書き換...
-
javaが文字コードの影響でコン...
-
IIS環境でJAVAを使用したい
-
Eclipse3.5EEでJavaのコンパイ...
-
javax.servlet は存在しません...
-
TOMCAT_HOMEって?
-
「識別子がクラス名でも名前空...
-
eclipseの構文エラーについて
-
日本語対応 逆コンパイラについて
-
逆コンパイルの見方について
-
javaの簡単なソースがコンパイ...
-
Javaのコンパイル結果が表示さ...
-
JAVAでC/C++の条件コンパイルの...
-
ソースパスとクラスパスの違い...
-
importしたパッケージが見つか...
-
c++Builder ver6.0のパッケー...
-
TeXで図を挿入できません.助け...
-
サクラエディタでjavaのプログ...
-
Beanクラスのimportについて
-
-deprecationとは?
おすすめ情報