- ベストアンサー
JDKのコンパイル方法について・・・。
今日JAVAの勉強をしようと思ってJAVAの入門書を購入しました。早速、収録されていたJDKvar1.3をインストールして本のまま設定を行いました。そしてプログラムをコマンドプロンプトからコンパイルしようと思ったのですが、「ディレクトリの指定が違います」と表示されてcドライブに作ったプログラムが入っているフォルダに移動できませんでした。 自分はコマンドプロンプトについて初心者です。類似した質問があるのか調べてみたんですが、読んで見てもいまいちよくわかりません。できればコマンドプロンプトを起動させてからのコマンドの入力の例を実際に教えていただけるとありがたいです。
- みんなの回答 (9)
- 専門家の回答
質問者が選んだベストアンサー
遅くまで起きてるのがバレバレですが、早めに。 本に載っているのはあくまで一例ですので、実際のフォルダの名前に合わせて SET PATH=C:\jdk1.3.1\bin;%PATH% とする必要があります。(先程の回答もそのような意味でした。分かりにくくてすみません) でも、こうして再起動しても変わらなかったんですよね。 とりあえず、javac [ファイル名].javaを実行する前に、 echo %PATH% を実行して、どんな出力が表示されるか教えていただけますか?解決の糸口になるかもしれません。ちなみにこれは、PATHに設定されている値を出力しています。セミコロンで区切られた中にC:\jdk1.3.1\binが含まれていればOKですが、どうでしょう?
その他の回答 (8)
- jo-ji
- ベストアンサー率72% (26/36)
ほんとに、どうしてでしょうかね。 確認していただいた結果を見ると、pathの設定はうまくいってるようですね。 UKYさんのおっしゃるように、フルパスで実行してみてどうなるか試してみて下さい。 これでもうまくいかなかった場合、 C:\WINDOWS>cd.. C:\>cd jdk1.3.1 C:\jdk1.3.1>cd bin C:\jdk1.3.1\bin>javac というように順番に実行してみて下さい。 使い方 : javac <options> <source files> という行から始まる長めのメッセージが出るかどうか、確認してみて下さい。どこかのフォルダ名をミスタイプしていないか、注意しながら。 そして、それさえもうまくいかない場合、C:\jdk1.3.1\binの中にあるjavac.exeを右クリックしてプロパティを選んで、不自然に小さいサイズになっていないかを確かめてみて下さい。私の所ではだいたい20KB程度です。小さすぎるファイルの場合、一度JDKをアンインストールしてから、もう一度インストールするのが一番良い解決法かもしれません。 なんかパパッと解決策を回答できなくて申し訳ありませんが。
お礼
ありがとうございます。 何とか、最後UKYさんがおっしゃったように、フルパスで実行してみるとうまくコンパイルされたみたいです。 このような、わけの分からない質問に熱心にご意見を寄せていただいたUKYさんならびにjo-jiさんには自分の記述が足りなかったことがありいろいろご迷惑をおかけしたことをお詫びし、またお二方に相談にのっていただいたことに深くお礼を申し上げます。ありがとうございました。 これからJAVAを学んでいくうえでまた、必ず何かにつまずく事があると思います。そのような時、またこちらに質問させていただこうと思っていますので、私Okachinを覚えていていただき良きご意見をお聞かせいただきたいと思います。 個人的に、お二方にはまだお聞きしたいことはありますが、それは今の段階では無理だと思うので、私がこちらに質問させていただいたときによろしくお願いいたします。 UKYさん、お礼を一緒にさせていただいたことお許しください。 Okachin
- UKY
- ベストアンサー率50% (604/1207)
う~ん、ここまでしてもだめなのか…… 直接の解決策にはなっていませんが、PATHが通らないならプログラムのフルパスを指定する方法があります。 下のように、javacプログラムのフルパスを入力して実行してみてください。 C:\jvs>C:\JDK1.3.1\bin\javac test.java これでもだめなら、私もお手上げかも…
- jo-ji
- ベストアンサー率72% (26/36)
回答に割り込んでしまうようで申し訳ありませんが、お急ぎのようなので。 どこが問題なのかを切り分けるために確認なのですが、C:\jdk1.3\binの場所(つまりCドライブの中のjdk1.3というフォルダの中のbinというフォルダ)の中に、javac.exeというファイルがありますか? 別の場所にあったりしませんか? 全然見当違いの回答だったら申し訳ありませんが、少しでも手がかりが欲しい時だと思いますので、回答させていただきました。
お礼
お礼の部分に書かせていただきますが、補足で書いたように設定を変えてみたのですが結果は同じでした・・・。 一体何が原因なんでしょうか?
補足
いえいえ、大変ありがたく思います。 早速調べてみたのですがjavac.exeはありました。 もしこの他にも何か原因が考えられるのならお教えしていただきたく思います。 やる気がある時期にこのような設定の部分でつまずいてしまうとつらいものがありますので・・・。 あと今気がついたのですが、PATHの設定で本では SET PATH=C:\jdk1.3\bin;%PATH% と追加するように記述されてるのですが、実際にCドライブにあるフォルダにはjdk1.3.1という名前になっているので SET PATH=C:\jdk1.3.1\bin;%PATH% とするとうまくいくのでしょうか? 頭が混乱してきて何をすればいいのかごちゃごちゃです。 ぜひご意見お聞かせいただけませんか?
- UKY
- ベストアンサー率50% (604/1207)
やはり原因はPATHの設定のようです。 またまた補足要求してすいませんが、どのようにPATHを設定したのか、 「autoexec.bat」ファイルの中身を全て見せてください。 見落としがちな間違いとしては、 ●PATHを設定したあと再起動していない。 ●ダウンロードしたJDKと本に載っているJDKのバージョンが違うため、間違ったフォルダをPATHに設定している。 といったところがあげられますが、やはりバッチファイルの中を見てみないことにはわかりません。
補足
いえいえ、すごく助かっているのでありがたいです。 早速補足させていただきます。 何もいじらない状態では以下のとうりです。 SET PATH=C:\WINDOWS;C:\WINDOWS\COMMAND;C:\PROGRA~1\BORLAND\DELPHI5\BIN;C:\PROGRA~1\BORLAND\DELPHI5\PROJECTS\BPL;C:\PROGRA~1\BORLAND\CBUILD~1\BIN;C:\PROGRA~1\BORLAND\CBUILD~1\PROJECTS\BPL SET windir=C:\WINDOWS SET winbootdir=C:\WINDOWS SET COMSPEC=C:\WINDOWS\COMMAND.COM SET PROMPT=$e[;37;0;40m$P$G SET TEMP=C:\WINDOWS\TEMP SET TMP=C:\WINDOWS\TEMP それで、その本にはこの状態から最後の行に SET PATH=C:\jdk1.3\bin;%PATH% と付け加えて上書き保存して再起動するように書いてあったのでそのようにしたんですが、何か問題なんですかね?DelphiとかC++Builderは関係してくるんでしょうか?あとOSはMeです。これからもいろんな意見お願いします。
- UKY
- ベストアンサー率50% (604/1207)
コンパイルできないというのは、実際どうなっているのでしょうか? そのとき表示されるメッセージを補足してください。 ちなみに、仮にPATHなどの設定がうまくいっているとしても、コンパイルは時間がかかります。DOSウィンドウのタイトルバーに「JAVAC」と表示されている間は、我慢してコンパイル終了まで待ちましょう。
補足
すいませんでした。早速補足をさせていただきます。 表示されるメッセージは「コマンドまたはファイル名が正しくありません。」というものです。 ちなみにPCにはDelphiとC++ Builderが入っています。
> C:\WINDOWS> > から、本に載っていた > C:\>cd jvs > C:\jvs> > にするにはどのようなコマンドを入力すればいいのかもう一度教えていただけないでしょうか? コマンドプロンプトで、 C:\WINDOWS> cd c:\ C:\> cd jvs C:\jvs> と入力すればいいはずですヨ あるいは、 C:\WINDOWS> cd ..\jvs でも構いません。 # ..\というのが、1つ上のディレクトリを表しますから
お礼
ありがとうございます。早速ためしたところうまくいきました。 ただ、今度はその後のコンパイルのところがどうもうまくいかなくて困っています。 C:\>cd jvs C:\jvs> の次に本には「プログラムのコンパイル」と書いてあって次のようにコマンドを打ち込むように書いてあるんです。 C:\jvs>javac [ファイル名].java しかし、このように打ち込んでもコンパイルされません。 よくPATHの設定がどうのとかということを目にしますが実際どのようにしたらいいんでしょうか?自分では本に書いてある通りにPATHの設定のしているつもりなんですが、一体何が原因でコンパイルでいないのかわかりません。
- imogasi
- ベストアンサー率27% (4737/17069)
マグマグで下記のメールマガジンをやってます。 http://www.mag2.com/m/0000086520.htm 始まったばかりです。わりあい丁寧な説明があり、最近 ご質問の関連の解説がありました。 だたJDKを使いDOS画面でコンパイルするのは、行きずまりますよ。少し長いプログラムを組んで、エラーがあると初心者はどうしてもエラー行数が多くなり、初めのほうのエラーが見れません。このOKWEBでも質問したのですが、なっとく出来ませんでして、頓挫しています。
お礼
>だたJDKを使いDOS画面でコンパイルするのは、行きずまりますよ。少し長いプログラムを組んで、エラーがあると初心者はどうしてもエラー行数が多くなり、初めのほうのエラーが見れません。このOKWEBでも質問したのですが、なっとく出来ませんでして、頓挫しています。 と言われましてもJDKを使用しないとJAVAはどのようにして学習すればいいのでしょうか?他に何か便利で初心者に易しく行きずまらないソフトがあるなら是非教えていただきたいです。よろしくお願いします。
とりあえず。 ・JDKをインストールしたのみ ・自分でjarファイルを作成していない ・とりあえずプログラムは作成してある と言う仮定でお話しますね。 1.パスを通す。(多分「本のまま設定」の中に入ってると思いますが一応書いておきます。) まずマイコンピュータを[Alt]を押しながらWクリックしてください。 全般/パフォーマンス/環境/…の環境をクリックします。 変数のなかからPathを探してクリックします。 下のテキストの変数(V)がPath、値(L)が*****になります。 値の一番右に、JDKのパスを入れてください 多分;C:\jdk1.3.*\bin;か;D:\jdk1.3.*\bin;でいいはずです。 (数字の部分は自分のJDKを見て入れてください。) [設定(E)]をクリックして[OK]をクリックします。 2.カレント移動 コマンドプロンプトを開きます。 ソース(プログラムがある場所へ移動)します。 まず、javaファイルをコマンドプロンプトへドラッグ&ドロップします。 すると *:***> が *:***>*:\***\******\*******.java になります。(*は人により異なります。) [BS]キーで *:***>*: にして[ENTER]をします。 もう一度ドラッグ&ドロップ *:***>*:\***\******\*******.java そこで[BS]キーで *:***> にします。 そして、[C][D][Ins][Space][F3]と順に押します。 *:***>CD \***\******\*******.java 最後にファイル名と一番右の\が消えるまで[BS]キーを押します *:***>CD \***\****** [Enter]キーを押します *:\***\******> ここではじめて、 javac ***.javaや java ***が使えるようになるはずです。 (コマンドの説明) C:やD: |ドライブの移動 CD |フォルダ(ディレクトリ)の移動 CD aaa |現在の階層の上の階層へ移動する。 CD \aaa |ドライブ直の階層へ移動する。 これだけ知ってれば動きます程度ですね…見にくいと思いますが参考までに。 何かわからないことがありましたらどうぞ。
お礼
すいません。ちょっとわかりにくかったです。 でもありがとうございました。
補足
ありがとうございます。 先ほど教えていただいた方法を試したんですがうまくいきません。そこでもう少し自分の状態を詳しく記述します。 書き忘れてたのですが使用しているOSはWindows Meです。あともう少し詳しくいうと自分はcドライブにjvsというフォルダを作ってそこにtest.javaというファイル名でプログラムを保存しました。 購入した本には C:\>cd jvs C:\jvs> というコマンドプロンプトの図が載っていて「カレントディレクトリをC:\jvsにします。」とだけ書いてあります。MS-DOSプロンプトの初めの状態である C:\WINDOWS> から、本に載っていた C:\>cd jvs C:\jvs> にするにはどのようなコマンドを入力すればいいのかもう一度教えていただけないでしょうか?
補足
大変ありがとうございます。こちらもお聞きしているのに寝てしまって補足するのが遅れてしまいました・・・。すいません。 早速jo-jiさんに言われたように入力してみました。 以下がDOS画面をコピーしたものです。 C:\WINDOWS>cd.. C:\>cd jvs C:\jvs>echo %PATH% C:\jdk1.3.1\bin;C:\WINDOWS;C:\WINDOWS\COMMAND;C:\PROGRA~1\BORLAND\DELPHI5\BIN;C \PROGRA~1\BORLAND\DELPHI5\PROJECTS\BPL;C:\PROGRA~1\BORLAND\CBUILD~1\BIN;C:\PROG A~1\BORLAND\CBUILD~1\PROJECTS\BPL C:\jvs> 自分で見てもこれが何を意味しているのかは分かりません。ただセミコロンで区切られた中にC:\jdk1.3.1\binが含まれているようには思います。もしこれがあっているとするならば他には何か原因はあるのでしょうか・・・? 何度もすいませんがよろしくお願いいたします。