• ベストアンサー

JDKのコンパイル方法について・・・。

今日JAVAの勉強をしようと思ってJAVAの入門書を購入しました。早速、収録されていたJDKvar1.3をインストールして本のまま設定を行いました。そしてプログラムをコマンドプロンプトからコンパイルしようと思ったのですが、「ディレクトリの指定が違います」と表示されてcドライブに作ったプログラムが入っているフォルダに移動できませんでした。 自分はコマンドプロンプトについて初心者です。類似した質問があるのか調べてみたんですが、読んで見てもいまいちよくわかりません。できればコマンドプロンプトを起動させてからのコマンドの入力の例を実際に教えていただけるとありがたいです。

  • Java
  • 回答数9
  • ありがとう数5

質問者が選んだベストアンサー

  • ベストアンサー
  • jo-ji
  • ベストアンサー率72% (26/36)
回答No.7

遅くまで起きてるのがバレバレですが、早めに。 本に載っているのはあくまで一例ですので、実際のフォルダの名前に合わせて SET PATH=C:\jdk1.3.1\bin;%PATH% とする必要があります。(先程の回答もそのような意味でした。分かりにくくてすみません) でも、こうして再起動しても変わらなかったんですよね。 とりあえず、javac [ファイル名].javaを実行する前に、 echo %PATH% を実行して、どんな出力が表示されるか教えていただけますか?解決の糸口になるかもしれません。ちなみにこれは、PATHに設定されている値を出力しています。セミコロンで区切られた中にC:\jdk1.3.1\binが含まれていればOKですが、どうでしょう?

Okachin
質問者

補足

大変ありがとうございます。こちらもお聞きしているのに寝てしまって補足するのが遅れてしまいました・・・。すいません。 早速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が含まれているようには思います。もしこれがあっているとするならば他には何か原因はあるのでしょうか・・・? 何度もすいませんがよろしくお願いいたします。

その他の回答 (8)

  • jo-ji
  • ベストアンサー率72% (26/36)
回答No.9

ほんとに、どうしてでしょうかね。 確認していただいた結果を見ると、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をアンインストールしてから、もう一度インストールするのが一番良い解決法かもしれません。 なんかパパッと解決策を回答できなくて申し訳ありませんが。

Okachin
質問者

お礼

ありがとうございます。 何とか、最後UKYさんがおっしゃったように、フルパスで実行してみるとうまくコンパイルされたみたいです。 このような、わけの分からない質問に熱心にご意見を寄せていただいたUKYさんならびにjo-jiさんには自分の記述が足りなかったことがありいろいろご迷惑をおかけしたことをお詫びし、またお二方に相談にのっていただいたことに深くお礼を申し上げます。ありがとうございました。 これからJAVAを学んでいくうえでまた、必ず何かにつまずく事があると思います。そのような時、またこちらに質問させていただこうと思っていますので、私Okachinを覚えていていただき良きご意見をお聞かせいただきたいと思います。 個人的に、お二方にはまだお聞きしたいことはありますが、それは今の段階では無理だと思うので、私がこちらに質問させていただいたときによろしくお願いいたします。 UKYさん、お礼を一緒にさせていただいたことお許しください。 Okachin

  • UKY
  • ベストアンサー率50% (604/1207)
回答No.8

う~ん、ここまでしてもだめなのか…… 直接の解決策にはなっていませんが、PATHが通らないならプログラムのフルパスを指定する方法があります。 下のように、javacプログラムのフルパスを入力して実行してみてください。 C:\jvs>C:\JDK1.3.1\bin\javac test.java これでもだめなら、私もお手上げかも…

  • jo-ji
  • ベストアンサー率72% (26/36)
回答No.6

回答に割り込んでしまうようで申し訳ありませんが、お急ぎのようなので。 どこが問題なのかを切り分けるために確認なのですが、C:\jdk1.3\binの場所(つまりCドライブの中のjdk1.3というフォルダの中のbinというフォルダ)の中に、javac.exeというファイルがありますか? 別の場所にあったりしませんか? 全然見当違いの回答だったら申し訳ありませんが、少しでも手がかりが欲しい時だと思いますので、回答させていただきました。

Okachin
質問者

お礼

お礼の部分に書かせていただきますが、補足で書いたように設定を変えてみたのですが結果は同じでした・・・。 一体何が原因なんでしょうか?

Okachin
質問者

補足

いえいえ、大変ありがたく思います。 早速調べてみたのですが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)
回答No.5

やはり原因はPATHの設定のようです。 またまた補足要求してすいませんが、どのようにPATHを設定したのか、 「autoexec.bat」ファイルの中身を全て見せてください。 見落としがちな間違いとしては、 ●PATHを設定したあと再起動していない。 ●ダウンロードしたJDKと本に載っているJDKのバージョンが違うため、間違ったフォルダをPATHに設定している。 といったところがあげられますが、やはりバッチファイルの中を見てみないことにはわかりません。

Okachin
質問者

補足

いえいえ、すごく助かっているのでありがたいです。 早速補足させていただきます。 何もいじらない状態では以下のとうりです。 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)
回答No.4

コンパイルできないというのは、実際どうなっているのでしょうか? そのとき表示されるメッセージを補足してください。 ちなみに、仮にPATHなどの設定がうまくいっているとしても、コンパイルは時間がかかります。DOSウィンドウのタイトルバーに「JAVAC」と表示されている間は、我慢してコンパイル終了まで待ちましょう。

Okachin
質問者

補足

すいませんでした。早速補足をさせていただきます。 表示されるメッセージは「コマンドまたはファイル名が正しくありません。」というものです。 ちなみにPCにはDelphiとC++ Builderが入っています。

noname#16216
noname#16216
回答No.3

> C:\WINDOWS> > から、本に載っていた > C:\>cd jvs > C:\jvs> > にするにはどのようなコマンドを入力すればいいのかもう一度教えていただけないでしょうか? コマンドプロンプトで、 C:\WINDOWS> cd c:\ C:\> cd jvs C:\jvs> と入力すればいいはずですヨ あるいは、 C:\WINDOWS> cd ..\jvs でも構いません。 # ..\というのが、1つ上のディレクトリを表しますから

Okachin
質問者

お礼

ありがとうございます。早速ためしたところうまくいきました。 ただ、今度はその後のコンパイルのところがどうもうまくいかなくて困っています。 C:\>cd jvs C:\jvs> の次に本には「プログラムのコンパイル」と書いてあって次のようにコマンドを打ち込むように書いてあるんです。 C:\jvs>javac [ファイル名].java しかし、このように打ち込んでもコンパイルされません。 よくPATHの設定がどうのとかということを目にしますが実際どのようにしたらいいんでしょうか?自分では本に書いてある通りにPATHの設定のしているつもりなんですが、一体何が原因でコンパイルでいないのかわかりません。

  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.2

マグマグで下記のメールマガジンをやってます。 http://www.mag2.com/m/0000086520.htm 始まったばかりです。わりあい丁寧な説明があり、最近 ご質問の関連の解説がありました。 だたJDKを使いDOS画面でコンパイルするのは、行きずまりますよ。少し長いプログラムを組んで、エラーがあると初心者はどうしてもエラー行数が多くなり、初めのほうのエラーが見れません。このOKWEBでも質問したのですが、なっとく出来ませんでして、頓挫しています。

Okachin
質問者

お礼

>だたJDKを使いDOS画面でコンパイルするのは、行きずまりますよ。少し長いプログラムを組んで、エラーがあると初心者はどうしてもエラー行数が多くなり、初めのほうのエラーが見れません。このOKWEBでも質問したのですが、なっとく出来ませんでして、頓挫しています。 と言われましてもJDKを使用しないとJAVAはどのようにして学習すればいいのでしょうか?他に何か便利で初心者に易しく行きずまらないソフトがあるなら是非教えていただきたいです。よろしくお願いします。

noname#6248
noname#6248
回答No.1

とりあえず。 ・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 |ドライブ直の階層へ移動する。 これだけ知ってれば動きます程度ですね…見にくいと思いますが参考までに。 何かわからないことがありましたらどうぞ。

Okachin
質問者

お礼

すいません。ちょっとわかりにくかったです。 でもありがとうございました。

Okachin
質問者

補足

ありがとうございます。 先ほど教えていただいた方法を試したんですがうまくいきません。そこでもう少し自分の状態を詳しく記述します。 書き忘れてたのですが使用しているOSはWindows Meです。あともう少し詳しくいうと自分はcドライブにjvsというフォルダを作ってそこにtest.javaというファイル名でプログラムを保存しました。 購入した本には C:\>cd jvs C:\jvs> というコマンドプロンプトの図が載っていて「カレントディレクトリをC:\jvsにします。」とだけ書いてあります。MS-DOSプロンプトの初めの状態である C:\WINDOWS> から、本に載っていた C:\>cd jvs C:\jvs> にするにはどのようなコマンドを入力すればいいのかもう一度教えていただけないでしょうか?

関連するQ&A

  • Javaのコンパイルがうまくいきません

    SunからJavaをインストールしたあと、購入した本の手順に指示に従って出力しようと試みているのですが、コマンドプロンプトでプログラムを保存しているフォルダまで移動したあと、javac Hello.javaと入力してエンターキーを押してコンパイルしようとしたら、’javac’は、内部コマンドまたは外部コマンド、操作可能なプログラムまたはバッチ ファイルとしても認識されていません。というメッセージが現れて、次へ進めません。(メモ帳にプログラムは書いて、Cドライブに保存しています。)よろしくお願いします。

  • コマンドプロンプト、JDKについて

    この度JAVA言語を勉強しようと思いまして、 JAVA言語の参考書を購入し、勉強、練習しているのですが、JDKをインストールし、コマンドプロンプト内にてディレクトリの移動まではできるのですが、ソースファイルを作成し、javacでコンパイルしようとするとコマンドプロンプト内にて「’javac’は、内部コマンドまたは外部コマンド、操作可能なプログラムまたはバッチファイルとして認識されていません。」と表示されコンパイルできないのですが、その原因が全くわかりません。対処法を教えてください。 OSはXPです。

  • コンパイルできません

    J2SEをインストールできなかったのでwindows installerをアンインストール後updateしなおしました。 その後インストールできたのですが、コマンドプロンプトでcd c:\をした後、javac ○○.javaでコンパイルできませんでした。画面には「'javac'は内部コマンドまたは外部コマンド操作可能なプログラムまたはバッチファイルとして認識されていません」と出ました。これはどういう意味なのでしょうか? JavaファイルはCドライブにJAVAフォルダを作ってその中に入れてあります。

    • ベストアンサー
    • Java
  • コンパイルできません

    javaの入門書を買って、はじめてプログラミング と言うものをやってみようかとはじめてみた大初心者なんです。JDKをダウンロードして、ソースをつくって、 MSDOSプロンプトでソースをコンパイルしょうとしたのですが、「c:\windows>cd c:ディレクトリ名」ののち、 「ディレクトリ名>javac ソース名.java」にしとところ 「コマンドまたはファイル名がただしくありません。」 と表示されてしまいます。何回もソース名を確認したので 合っていると思うのですのでコマンドが違うのでしょうか? JDKはjava2sdk1.4.0をつかっています。はじめの一歩をふみはずした感じなので、どうぞ教えて下さい。

    • ベストアンサー
    • Java
  • Javaでコンパイルができません。

    Javaでコンパイルができません。 コマンドプロンプトで操作しています。 コマンドプロンプトでjavacと打つと… 'javac'は、内部コマンドまたは外部コマンド、 操作可能なプログラムまたはバッチファイルとして認識されていません。 このように表示されてしまいます。 私にはなぜコンパイルができないのか分かりません。 分かる方がいたら、ぜひ教えてください。 よろしくお願いします。

    • ベストアンサー
    • Java
  • コンパイルの実行の仕方

    初めてプログラミング言語を授業でとったのですが、 コンパイルの【実行】の仕方がわかりません。 まず、コマンドプロンプトを開くまではわかったのですが、 学校での説明に 「javaのコンパイラはjavacであるので、以下のように指定する。 javac <ソースファイル名> 」 と書いてありました。 コンパイラというのは上記の場合、コマンドプロンプトに 「C:\>javac *****.java」を入力すればコンパイルしたということになるのでしょうか? 「指定する」とかいてあっても指定の仕方すらわからないのです。 コンパイルを検索してもなかなかコンパイルをする意味がよくわからないので、よろしければ教えてください。

  • Javaファイルをコンパイル

    JAVAの初心者なのですが、Servletをやるために参考書を購入したのですが、最初で行き詰まってしまいました。参考書通りにやってもできないのです。 コマンドプロンプトを使ってコンパイルをするという事なのですが、コンパイルができません。環境変数がうまく設定できてないのかもしれません。 クラスパスの設定をしてWEB-INF ディレクトリへ移動したのですが、最後のコンパイルの実行が上手くいきません。「パッケージを見つけられません」と「シンボルを見つけられません」というメッセージが書かれるのですが、それはコード自体が間違ってるのでしょうか。 それとjava開発ソフトのEclipseを使っていたのですが、それでできるclassファイルでいいのですか?それとも、テキストファイルからコマンドプロンプトを使ってコンパイルしなければいけないのでしょうか。

    • ベストアンサー
    • Java
  • JDKをインストールしたのですが・・・。

    PC(Win98)にjavaの開発環境を入れようと、java入門書に付随していたCD-ROMからJDKをインストールしたのですが、MS/DOSプロンプトからjavaファイルのコンパイル(javacコマンド)がうまくいきません。javaファイルはサンプルとしてついていたもので、コーディングが間違っているわけでもなく、エラーがあるならでるはずの結果もでてきません。 JDKはSunMicrosystemsの無料配布しているものなのですが、本にはインストール方法が全く載っていませんでした。Win版のexeファイルを実行する他に設定しなければならないことなどあれば教えてください。 お願いします。

    • ベストアンサー
    • Java
  • コンパイルできません

    Javaのプログラムをコマンドプロンプトでコンパイルしようとしているんですが、プログラム中で画像データを byte [] imagedata = {-1, -40, -1, -32, 0, 16, 74, ・・・ -1, -39};のように記述しています。 そこで、コンパイルすると「このコードは64Kバイトを超えるサイズのメソッドの生成を必要とします。VirtualMachineは生成されるクラスファイルを拒否します。」と表示されてコンパイルできません。どうしたらいいのでしょうか?わかる方おられましたらお願いします。

    • ベストアンサー
    • Java
  • コンパイルできない

    C言語のプログラムをはじめたばかりの初心者ですが、 "smp1.c"というソースファイルをメモ帳でつくり、コマンドプロンプトで上でコンパイルしようとしたのですが、うまくいきません。 smp1.cファイルの内容は #include <stdio.h> int main(void) { printf("Hello\n"); return 0; } となっています。cworkというディレクトリにすべてのプログラムを保存しています。 コマンドプロンプト上でcworkディレクトリに移動し"C:\cwork>" の後に ”cl smp1.c ” とタイプしてenter を押しても 'cl' is not recognized as an internal or external command, operable program or batch file. と表示されコンパイルできません。 一体どうすればいいでしょうか? 初心者なので説明不足かもしれませんが その際は補足しますので、どうが教えてください.

専門家に質問してみよう