質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

89.68%

javaでコンパイルできません。

解決済

回答 5

投稿 編集

  • 評価
  • クリップ 0
  • VIEW 2,073

learning_ci

score 20

前提・実現したいこと

javaでコンパイルしたいです。
使っているパソコンはWindows7、64ビットオペレーティングシステムです。

ここに質問したいことを詳細に書いてください

発生している問題・エラーメッセージ

'javac'は、内部コマンドまたは外部コマンド、操作可能なプログラムまたはバッチ ファイルとして認識されていません。」


というメッセージが出てコンパイルできません。

該当のソースコード

javac Test.java


というコードを入力した結果上に書いたエラーメッセージが出ました。

試したこと

・スペルミスをしてないか確認
→してませんでした。
・ファイル名があっているか確認
→Testという名前で.javaの拡張子なので、合っていました。

・インストールしたjavaのビット数が適切か確認
→パソコンが64ビットなのに対し64ビットのjavaをインストールしていました。

・Path
http://nobuo-create.net/java-beginner-1/
このサイトの通りにpathを設定しました。変数に書き込むときに元の文字を一文字も消さないこと、コンマの後に書き込むことなどは注意してやりました。

しかし気になるのが、3回ほどpathを設定する作業をしたことです。1回目のコンパイルでできなかったのでもう1度pathを設定し、まだコンパイルできなかったのでもう一度pathを設定してしまいました。

補足情報(言語/FW/ツール等のバージョンなど)

1回目にjavaをインストールしたあと入っている場所が分からなくなり、もういちどインストールしました。結果、コンピュータの中には4つのjavaファイルが出来てしまっていました。そこで最新の日付になっているファイル以外はすべて消去しました。これもまずかったのでしょうか。

ドがつく初心者で、インストールやPathの設定を何度もやってしまい申し訳ありません。ご回答お待ちしております。

【追記】
環境変数をコピーしたところ、以下のようになります。
C:\ProgramData\Oracle\Java\javapath;C:\Program Files\Common Files\Microsoft Shared\Windows Live;C:\Program Files (x86)\Common Files\Microsoft Shared\Windows Live;%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%SYSTEMROOT%\System32\WindowsPowerShell\v1.0\;C:\Program Files (x86)\Toshiba\Bluetooth Toshiba Stack\sys\;C:\Program Files (x86)\Toshiba\Bluetooth Toshiba Stack\sys\x64\;C:\Program Files (x86)\Intel\Services\IPT\;C:\Program Files (x86)\Windows Live\Shared;c:\Program Files (x86)\Common Files\Roxio Shared\DLLShared\;c:\Program Files (x86)\Common Files\Roxio Shared\OEM\DLLShared\;c:\Program Files (x86)\Common Files\Roxio Shared\OEM\DLLShared\;c:\Program Files (x86)\Common Files\Roxio Shared\OEM\12.0\DLLShared\;c:\Program Files (x86)\Roxio 2010\OEM\AudioCore\;C:\Program Files\Intel\WiFi\bin\;C:\Program Files\Common Files\Intel\WirelessCommon\;C:\Program Files (x86)\Symantec\VIP Access Client\;C:\Program Files (x86)\Skype\Phone\;C:\Program Files (x86)\Common Files\Adobe\AGL

やはり何度もPathを設定したことでどんどん後ろに書き足されていっているのでしょうか?

また、コントロールパネル>システムで確認したオペレーティングシステムは64ビット、
コントロールパネル>プログラムから確認したjavaも64ビットだったのに上記には(×86)の文字が見えます。
これも何か関係があるのでしょうか?

回答してくださったみなさまありがとうございます。
ひきつづきご回答お待ちしております。

  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

質問への追記・修正、ベストアンサー選択の依頼

  • swordone

    2016/05/15 19:10

    >そこで最新の日付になっているファイル以外はすべて消去しました。 どうやって削除しました?

    キャンセル

  • learning_ci

    2016/05/16 23:43

    3つまとめて選択し、右クリック→削除です。
    ゴミ箱に移動しますか?というメッセージが出ていたと記憶しています。
    ゴミ箱の中に行って消去まではしていません。

    キャンセル

回答 5

checkベストアンサー

0

こんにちは。

リンク先の説明には記載がないですが、「Pathを通す」作業を行った後、PCを再起動する必要がある筈です。
「3回ほどpathを設定する作業をした」ということですので、Path変数の内容に重複がないことを確認後、PCを再起動してから、再度、javacコマンドでコンパイルしてみてください。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2016/05/19 21:15

    すいません。どうも私の手に負えないようです。

    システム環境変数(S)のPathに設定されているものと、ユーザ環境変数(U)のPathに設定されているものが展開・連結されてPath環境変数へ設定されます。

    つまり、①②③を行うことで、システム環境変数(S)のPathが変わるはずです。
    (C:\ProgramData\Oracle\Java\javapath;がなくなり、C:\Program Files\Java\jdk1.8.0_45\bin;が追加される。)
    しかし、設定が変わっておらず、最初にlearning_ciさんが質問文へ書かれたままのようにみえます。

    その原因として、learning_ciさんが、システム環境変数(S)のPathの設定手順を間違って操作している可能性があります。もしくは、正しく操作しているにも関わらずWindowsに不具合が生じていて無視されてしまう可能性も少し残っていると思います。

    前者の場合、learning_ciさんが質問文で提示されたリンク先の説明通りにできていないとすると、後はあれこれ試行錯誤してみるしかないですが、ここは試行錯誤するのは危険な場所です。
    後者の場合は、私には対策を思いつきません。申し訳ないです。

    どなたかお近くの詳しい人に直接見て貰った方が良いと思います。

    キャンセル

  • 2016/05/21 18:06

    ありがとうございます!
    原因不明ですね...
    何回も質問したのに丁寧に付き合ってくださりありがとうございました!

    キャンセル

  • 2016/05/21 18:26 編集

    たった今原因が分かりました!
    とても簡単なことでした。
    Pathを編集した後、そのウィンドウそのものは「OK」をクリックし閉じていたのですが、
    その前のウィンドウ(「システムのプラパティ」のウィンドウ等)を×で閉じていたからだと思います。

    そのことに思い至ってすべてのウインドウを「OK」で閉じたあと>javac Test.java[Enter]するとエラーメッセージは出ず、今いるディレクトリだけが表示され、コンパイルに成功していました。

    Pathの設定以前のパソコンの使い方みたいな超超基本的なことなのに、すごくややこしくしてしまい、すみません。
    でも助かりました、ほんとありがとうございました!!

    キャンセル

0

パスを表示させてみて、「javac」が存在するフォルダがこの中に存在するか確認してみたらどうですか?

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

0

手順としては特に誤りはないと思いますが、気になるのが環境変数 PATH の設定でしょうか

環境変数(PATH)の設定については、コンピュータ共通の設定ではなく、ログインユーザ別の環境変数に設定すると良いです。
もしいろいろと削除された後でしたら、改めてダウンロードをしておきましょう。

Javaのインストールを C:\java8 にて行った場合、Javaコンパイラであるjavacは C:\java8\bin に展開されますので、今後Javaを使うにあたっては次のように環境変数を追加するとよいでしょう。

JAVA_HOME : C:\java8
PATH : %JAVA_HOME%\bin;%PATH%

以上2つの環境変数を追加してOKを押した後にコマンドプロンプトを開くと、環境変数が適用された状態になります。(PCの再起動は不要です。)

java -version

と入力してインストールしたJavaのバージョンを確認してください。
Javaのバージョンが表示されたら、javacも可能です。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

0

JDKはプログラムなので、コントロールパネルの「プログラムのアンインストール」から削除しなくて大丈夫かな…?と思うのですが。
パスを見る限り、JDKのパスが通っていません。すでにコメントにありますが、Javaプログラムのbinフォルダを指定しないといけません。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

0

以下の方法を試してみてください。
(1)Pathから"C:\ProgramData\Oracle\Java\javapath;"を削除してください。
(2)Pathに"C:\Program Files\Java\jdk1.8.0_45\bin"(←自身のjdkの場所により異なる)を追加してください
(3)コマンドプロンプトを開いているなら一旦再起動してください。

上記の通りにやればjavacと叩くだけで、使用方法が表示されると思いますが。。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

15分調べてもわからないことは、teratailで質問しよう!

  • ただいまの回答率 89.68%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる

同じタグがついた質問を見る