天使と悪魔選手権

初級者向けの本を見てJAVAを始めた完全初心者です。
まず、「jdk-1_5_0-windows-i586」を「C:\Program Files\Java」に入れました。
で、使用OSはWin98SEなのですが、システム設定ユーティリティのAutoexec.batタブを選び、パスの設定をpath=%path%;"C:\Program Files\Java\jdk1.5.0\bin"としました。MS-DOSプロンプトで「javac」を実行したところ、パスの設定はうまくいったことが確認できました。
そして、メモ帳に

class Hello {
public static void main(String[] args){
System.out.println("Hello Java World!");
}
}

と書き込み、ファイルの種類は「すべてのファイルで保存」を選択してCドライブ直下の「java」フォルダに「Hello.java」として保存しました。
ところが、プロンプトで「C:\java>javac Hello.java」としても、

エラー:Hello.javaを読み込めません。
エラー 1個

とのエラーが表示されてどうしてもうまくいかないのです。
原因は何なのでしょうか。まだ、パスの設定の仕方に関して問題があるのでしょうか…。どうすれば対処できるのか、御存知の方、どうかアドバイスをよろしくお願い致します。

A 回答 (5件)

>メモ帳でソース入力し、保存する時、ファイルの種類を「すべてのファイルで保存」で保存しても結局、「.txt」のテキストファイルで保存されてしまうのです。

これはなぜなのでしょう。
全てのファイルで保存にしてもファイル名が「~.txt」と書かれたまま保存すればテキストファイルで保存されます。

>一度でJAVAファイルとして保存できないのでしょうか。
「すべてのファイルで保存」にしてファイル名を「~.java」として保存すればよいです。

>クラスファイルを実行する時、C:\java>java Helloでは、Exception in thread "main" java.lang.NoClassDefFoundError:Helloとのエラーが出てしまい、C:\java>java -cp . Helloで実行するとはじめてうまくいきます。
http://oshiete1.goo.ne.jp/kotaeru.php3?q=2170080
を見てください。

メモ帳よりもEclipse使ったほうが便利ですよ。
http://www.atmarkit.co.jp/fjava/javatips/104ecli …
    • good
    • 0
この回答へのお礼

回答ありがとうございます。お礼が遅くなりたいへんすいませんでした。Eclipse使ってみます。

お礼日時:2006/09/05 06:29

#2補>前者の方が簡単な記述で済みますし、便利だと思うのですが


#3の方が仰るようにCLASSPATH の設定がされているのだと思います。
CLASSPATH の指定を削除してしまうか
カレントディレクトリである . を付け加える
CLASSPATH=.;元設定されていたもの
のようにすればいいんじゃないかと思います。

その他の質問については、既に他の方が答えているので省略
    • good
    • 0
この回答へのお礼

たびたび回答ありがとうございました。お礼が遅くなり、たいへんすいませんでした。

お礼日時:2006/09/05 06:30

メモ帳でもプログラムのソースコードは書けますが、ある程度本格的にやるならもっと機能の豊富なテクストエディタを使ったほうがよろしいかと思います。


(とにもかくにも、拡張子を勝手に変えられたくない場合は 「"Hello.java"」のように名前を「"」で括って下さい)

> 「java -cp . Hello」はできるが「java Hello」は駄目

CLASSPATH 環境変数が悪さをしていると思われます。
Autoexec.bat の中に「set CLASSPATH=……」のように書かれている箇所はありますか? あったらどのように書かれているか補足してください。
    • good
    • 0
この回答へのお礼

回答ありがとうございます。お礼が遅くなりたいへんすいませんでした。「””」で囲む技法、参考になりました。

お礼日時:2006/09/05 06:28

>エラー:Hello.javaを読み込めません。


とメッセージがでていることから
javac は、起動しているのでしょうからパスの設定の問題ではないと思います。
c:\java フォルダにHello.java があるかどうかを(ファイル名が微妙に違ってないか調べてみてください。

この回答への補足

回答ありがとうございます。パスの設定の問題はないようですね。エクスプローラでc:\java内のメモ帳で保存したファイルの種類を確認したところ、末尾に「.txt」となっていました。JAVAファイルに変更したところ、コンパイルに成功しクラスファイルが作られました。感謝します。ただ、メモ帳でソース入力し、保存する時、ファイルの種類を「すべてのファイルで保存」で保存しても結局、「.txt」のテキストファイルで保存されてしまうのです。これはなぜなのでしょう。一度でJAVAファイルとして保存できないのでしょうか。私は「名前を変更」で「.txt」の部分を削除しました。それに、クラスファイルを実行する時、C:\java>java Helloでは、Exception in thread "main" java.lang.NoClassDefFoundError:Helloとのエラーが出てしまい、C:\java>java -cp . Helloで実行するとはじめてうまくいきます。前者の方が簡単な記述で済みますし、便利だと思うのですが、ずっと後者の方法でやるしかないのでしょうか。たびたびすいませんが、よろしければ助力を頂けましたらよろしくお願い致します。

補足日時:2006/06/10 14:56
    • good
    • 0

c:\javaにHello.javaはありますか?


Hello.java.txtとかはダメですよ。

この回答への補足

回答ありがとうございます。[マイコンピュータ][表示][ファルダオプション][表示][登録されているファイルの拡張子は表示しない]のチェックを外し、c:\java内のメモ帳で保存したファイル名を見たところ、末尾に「.txt」となっていました。crumさんのおっしゃる通りのミスでした。JAVAファイルに変更したところ、コンパイルに成功しクラスファイルが作られました。感謝です。ただ、メモ帳でソース入力し、保存する時、ファイルの種類を「すべてのファイルで保存」で保存しても結局、「.txt」のテキストファイルで保存されてしまうのです。これはなぜなのでしょう。一度でJAVAファイルとして保存できないのでしょうか。私は「名前を変更」で「.txt」の部分を削除しました。それに、クラスファイルを実行する時、C:\java>java Helloでは、Exception in thread "main" java.lang.NoClassDefFoundError:Helloとのエラーが出てしまい、C:\java>java -cp . Helloで実行するとはじめてうまくいきます。前者の方が簡単な記述で済みますし、便利だと思うのですが、ずっと後者の方法でやるしかないのでしょうか。たびたびすいませんが、よろしければ助力を頂けましたらよろしくお願い致します。

補足日時:2006/06/10 14:52
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


おすすめ情報