最近、開発環境も統合一色でコンパイル方法を知らない開発者が増えてきました。 プリプロセッサやリンカの存在を知らない方も多いのにはびっくり。 時代の流れだから仕方ないとしても、やはり知っておかなければならないコンパイル家業。 コンパイラの都合も、聞いてやってください。
本当は単体コンパイルだけじゃなく、全体のコンパイルやjavadocの生成まで書きたかったけど、面倒になってしまい、書いてません。 いつ再燃するのかこの気持ち! 励ましのお便り待ってます〜。
言語入門時によく使われる、Hello,World!という文字を表示するだけのプログラムを作ってみる過程でコンパイルしてみます。 とりあえずHello Worldのソース(SOURCE-01参照)を見てください。
SOURCE-01 01: public class HelloWorld 02: { 03: public static void main(String[] arg) 04: { 05: System.out.println("Hello,World!"); 06: } 07: }
こいつをHelloWorld.javaというファイル名で保存してください。
では、JAVAの開発キットに含まれるコンパイラであるjavacでコンパイルしてみよう。 以下の例はWindowsのDOSウィンドウのイメージです。
SAMPLE-01 C:\sample> javac HelloWorld.java C:\sample>
状況は、C:\sampleディレクトリにいて、そこにHelloWorld.javaファイルがあります。
コンパイルに成功すると、何事もなかったようにプロンプトが表示されます。 コンパイルに失敗すると、コンパイラがコンパイルを失敗した原因が画面に出てきます。 これは俗にコンパイルエラーと言われています (コンパイルエラーというとコンパイラが悪いみたいに聞こえるけど)。 がんばってソースコードを直しましょう。
コンパイルエラーの修正の極意を一つ。 コンパイラは、コンパイル作業を続行できない状態になった時点で停止します。 つまり、あなたのタイプミスの時点で停止するわけではありません。
コンパイルが成功したら、C:\sampleディレクトリに新しいファイルができていると思います。 これで一応コンパイルは完了です。 実行結果を見るためには以下のようにします。
SMAPLE-02 C:\sample> java HelloWorld Hello,World! C:\sample>