【Windows 10】「javacは内部コマンドまたは外部コマンドとして認識されていません」エラーの解決方法
「javacは内部コマンドまたは外部コマンドとして認識されていません」というエラーは、WindowsのコマンドプロンプトでJavaプログラムをコンパイルしようとした際によく発生する問題です。また、Javaコンパイラのバージョンを確認しようとしたときにも表示されることがあります。

Javacとは何か?
Javac(読み方:ジャバシー)は、Oracle社が開発したJDK(Java Development Kit)に含まれるJavaの主要コンパイラです。このコンパイラは、Java言語仕様(JLS)に準拠したソースコードを受け取り、JVM(Java Virtual Machine)仕様に従ったJavaバイトコードへと変換する役割を担っています。
「javacが認識されない」エラーの原因
このエラーは、コマンドプロンプトがJavaのPATH変数を見つけられない場合に発生します。主な原因は以下の2つです。
- マシンにJDK(Java Development Kit)がインストールされていない - 多くの場合、ユーザーがJavaコンパイラ(javac)はJava実行環境(JRE)と一緒にインストールされていると誤解していることが原因です。
- Javacへのパスが設定されていない、または誤って設定されている - コマンドプロンプトからコンパイルを行い、他のアプリケーションサーバーツールを正常に動作させるためには、システムがJavacの場所を把握している必要があります。この場合は、パスを手動で設定する必要があります。
ステップ1:JDK(Java Development Kit)をインストールする
このエラーが発生する大きな理由の一つは、Javaを学び始めたばかりのユーザーがJava実行環境(JRE)とJava開発キット(JDK)を混同してしまうことです。
JREはJDKの一部ですが、通常は別々にダウンロードされます。多くのJavaを利用するプログラムは、インストールパッケージにJREを同梱しています。
Java開発を行わない限りJDKが必要になるケースはほとんどないため、「JavacはすでにJREによってインストールされている」と思い込んでしまうのですが、実際にはJDK一式をインストールする必要があります。
この状況に当てはまると思われる方は、以下の手順に従ってJDKをインストールし、「javacが認識されない」エラーを解決しましょう。
- Oracleの公式サイトにアクセスし、Java Platform(JDK)の上にあるDownloadアイコンをクリックします。これにより、最新版のJava Development Kitを入手できます。

- 次の画面でJava SE Development Kitまでスクロールし、ライセンス契約に同意する(Accept License Agreement)のチェックボックスを選択します。その後、Windows用のダウンロードリンクをクリックしてください。選択肢は2つありますが、ダウンロード後に展開作業が不要になるため、.exeファイルのダウンロードをおすすめします。

- ダウンロードが完了したら、JDKのインストーラーを実行し、画面の指示に従ってインストールを完了させます。

- 次の画面では、Development Tools(開発ツール)とSource Code(ソースコード)の両方が、サブ機能も含めてローカルハードドライブにインストールされるようになっていることを確認してください。さらに、可能であればデフォルトのインストール先を変更しないことをおすすめします。そうすることでステップ2がスムーズに進められます。

注意:あわせて、「Install to(インストール先)」に表示されているインストールパスをメモしておきましょう。ステップ2で必要になります。 - Java Development Kitのインストールが完了するまで待ちます。処理が終了したら、再起動を促されない場合は手動でPCを再起動してください。

これでJavacを含む正しいパッケージがインストールできました。続いてステップ2に進み、Javacへのパスが正しく設定されているかを確認しましょう。
ステップ2:Java環境変数の設定とシステムパスの更新
この作業を始める前に、以下の手順はステップ1でJDKが正しくインストール済みである場合にのみ有効であることを理解しておいてください。
JDKをインストールしたのにまだ「javacは内部コマンドまたは外部コマンドとして認識されていません」というエラーが表示される場合、それはJava初心者がよく直面する典型的な技術的問題に遭遇したということです。Windows上でJDKのセットアップを完了させるには、いくつかの手動操作が必要です。これらの手順は、JDKのインストール後だけでなく、JDKをアップデートした後にも必ず行う必要があります。
以下は、Java環境変数を正しく設定し、システムパスを更新するための手順です。
- Windowsキー + Rを押してファイル名を指定して実行ダイアログを開きます。次に「sysdm.cpl」と入力し、Enterキーを押してシステムのプロパティウィンドウを開きます。

- システムのプロパティウィンドウ内で詳細設定タブに移動し、環境変数ボタンをクリックします。

- 開いた環境変数ウィンドウで、システム環境変数セクションの下にある新規ボタンをクリックします。

- 新しいシステム変数ウィンドウで、変数名をJAVA_HOMEに、変数値をJDKディレクトリへのパスに設定します。「OK」をクリックして変更を保存します。

注意:ステップ1でアドバイスどおりJDKのインストールパスをメモしていれば、そのパスをそのまま変数値欄に貼り付けることができます。
- 環境変数ウィンドウに戻ったら、システム環境変数の中から「Path」という名前の変数を探します。Path変数を選択した状態で編集ボタンをクリックします。

- 環境変数の編集ウィンドウで新規ボタンをクリックします。

- 新しく作成されたエントリに「%JAVA_HOME%\bin」と入力し、Enterキーを押します。その後、「OK」をクリックして変更を適用します。

- 以上でJava環境の設定は完了です。これで、コマンドプロンプトからアプリケーションのコンパイルやJavacのバージョン確認ができるようになります。

おまけ:設定が成功したかどうかを確認する
コマンドプロンプトで追加の確認を行うことで、Java環境変数のパスが正しく設定できたかどうかを検証できます。以下の手順で設定が機能しているかを確認してみましょう。
- Windowsキー + Rを押してファイル名を指定して実行ダイアログを開きます。次に「cmd」と入力し、Enterキーを押してコマンドプロンプトを起動します。

- コマンドプロンプトで「echo %JAVA_HOME%」と入力し、Enterキーを押して表示結果を確認します。JDKのディレクトリパスが表示されれば、ステップ2は成功しており、JAVACは正常に動作しています。逆に、JDKのパスではなく空白が表示された場合は、環境変数の設定に失敗しています。その場合は、ステップ1とステップ2を再度見直してください。

-
Windows 10でAndroidスマホが認識されないときの対処法15選
AndroidスマートフォンをPCに接続しても、充電されるだけでWindows 10に認識されない——そんなお悩みをお持ちではありませんか?本記事では、この問題を解決するための15の方法を詳しく解説します。ぜひ最後までご覧ください! AndroidスマホがWindows 10で認識されない原因とは Androidスマートフォンは、音楽の再生、動画の視聴、セルフィーの撮影など、多彩な機能を備えたまさに「ポケットの中の相棒」です。しかし、内部ストレージやSDカードが一杯になったときは、ファイルをPCへ転送する必要が出てきます。ところが、いざ接続してもWindows 10がスマホを認識してくれないと
-
Windows 10でUSBデバイスが認識されないときの対処法を徹底解説
スマートフォンをWindows PCに接続しても長時間反応がない場合、「Windows 10でUSBデバイスが認識されない」という問題に直面している可能性があります。急いでいるときに大事なファイルを転送できないと、本当に困ってしまいますよね。 この問題の原因は、単純な接続ミスの場合もあれば、WindowsのUSBデバイスドライバーに起因する場合もあります。この記事では、USBデバイスが認識されない問題の解決方法を詳しく解説します。 まずはWindows向けの優れたドライバー更新ソフトの活用をおすすめします。中でも「Smart Driver Care」は、大規模なデータベースからあらゆるデバイス