Javaはソースコードを書くだけでは実行することはできません。コンパイルを実行して、プログラムが動く状態にしなければいけません。
この記事では、Javaのコンパイルについて以下の内容で解説していきます。
- コンパイルする方法
- 環境変数の設定
- エラーでコンパイルできない場合
- オプションの設定
- jarファイルを作成する方法
など、コンパイルの基本からコンパイルエラーが発生した場合の対処法について、わかりやすく解説していきます!
なお、Javaの記事については、こちらにまとめています。
コンパイルする方法
ここでは、コマンドプロンプトでJavaをコンパイルする方法について説明します。コマンドプロンプトで以下のように入力して実行します。
javac Javaファイルの名前.java
コンパイルまでの準備
Javaファイルをコンパイルするまでの準備について説明します。
まずはJava10をダウンロード、インストールする必要があります。インストール後に環境変数を設定する必要があります。そして環境変数を設定した後にパソコンを再起動したらコンパイルできるようになります。
ダウンロード、インストール、環境変数の設定についてはこちらで詳しく解説していますので、ぜひ参考にしてください。
コンパイルするには実行したいJavaファイルが保存されているフォルダにコマンドプロンプトで移動する必要があります。コマンドプロンプトで指定のフォルダに移動するには以下のように入力実行します。
cd Javaファイルが保存されているフォルダのパス
コンパイルの例
それでは簡単な例をご紹介します。ここでは「C:Sample」フォルダ内の「Sample.java」ファイルをコンパイルします。
コンパイル後の確認
コンパイルが成功すると「Javaファイル名.class」ファイルが作成されます。これが作成されているのが確認できればOKです。
またこのあとプログラムを実行する方法については、こちらで詳しく解説しています。ぜひ参考にしてください。
エラーでコンパイルできない場合
コマンドプロンプトにエラーが表示され、コンパイルできない主な原因と対処法は以下のとおりです。
環境変数の設定を確認
Javaはインストールしただけでは、コンパイルや実行はできません。環境変数を設定する必要があります。
こちらを参考にもう一度確認してみましょう。
そして忘れがちなのがパソコンの再起動です。もし再起動していなければ、再起動後にもう一度コンパイルしてみましょう。
Javaファイルの確認
コマンドプロンプトでJavaファイルが保存されているフォルダに移動する必要があります。移動できているかもう一度確認しましょう。
文法が間違っている場合
以下のサンプルコードでコンパイルできるか確認してみてください。サンプルコードでコンパイルできて、他のJavaファイルでコンパイルできない場合はソースコードの記述に誤りがあるかもしれません。
ソースコードをもう一度確認してみましょう。
Sample.java:
public class Sample { public static void main(String[] args) { System.out.println("Hello Java!"); } }
オプションの設定
javacコマンドでコンパイルする際にオプションを設定することもできます。主なオプションは以下のとおりです。
オプション | 説明 |
---|---|
-encoding 文字コード | ソースコードで使用している文字コードを指定 |
-sourcepath パス | ソースファイルの保存先 |
-d パス | クラスファイルの出力先 |
-classpath パス | 関連するクラスファイルの検索先 複数指定時はセミコロン(Windows)、 もしくはコロン(Unix)区切り |
-verbose | 詳細なメッセージを表示 |
-source バージョン | 対象となるコードのバージョンを表示 |
以下のように指定します。
javac -sourcepath C:Sample -d C:Sample -verbose Sample.java
jarファイルを作成する方法
javacコマンドで複数のclassファイルを作成した後に、拡張子が「.jar」のjarファイルを作成することもできます。
jarファイルとは簡単に言うと、Javaのファイルを1つにまとめて圧縮したファイルのことです。
class Sample { public static void main(String[] args) { Sample2 sample = new Sample2(); } } class Sample2 { public Sample2() { System.out.println("Hello Java!"); } }
jar -cvf Sample.jar *.class
javacコマンドでclassファイルを作成した後に、jarコマンドでSample.classファイルとSample2.classファイルを1つにまとめています。jarコマンドの主なオプションは以下のとおりです。
オプション | 説明 |
---|---|
-c | 圧縮ファイルの新規作成 |
-t | 内容の一覧を表示 |
-x | 圧縮ファイルの展開 |
-u | jarファイルの更新 |
-v | コマンドラインに処理内容を表示 |
-f | jarファイル名の指定 |
-m | マニフェストファイルを指定 |
-i | インデックス情報を作成 |
-o | 圧縮を行わない |
-M | マニフェストファイルを作成しない |
-C | 指定したファイルの取り込み |
まとめ
今回はJavaのコンパイルについて解説してきましたが、いかがでしたか?
作成したJavaファイルをコンパイルして、Javaプログラミングを楽しんでいきましょう!