Maven2 を使う際、Compiler プラグインは殆ど意識せずに使用されています。 ただし、「Generics」や「拡張 for 文」を使用するためには、コンパイルの際にソースのバージョンを指定しなくてはいけません。 てなわけで、今回は、コンパイルの際にオプションを指定する仕方を見ていきます(前にチラッと書きましたが)。
POM ファイルの書き方
とりあえずは POM サンプルを。
<?xml version="1.0"?> <project> ... <build> <plugins> <plugin> <artifactId>maven-compiler-plugin</artifactId> <configuration> <source>1.6</source> <target>1.6</target> <encoding>UTF-8</encoding> </configuration> </plugin> </plugins> </build> </project>
コンパイル・オプションは、上記サンプルのように <configuration> 要素下に指定します。 また、オプションの指定の仕方は
<名前>値
の形でします。
オプション
上記のサンプルで指定しているオプションは source, target, encoding です。 これらの設定は、通常の javac ツールでコンパイルを行う際に指定するオプション -source, -target, -encoding と同じです。
- source: Java ソースコードのバージョンを指定します。
- target: ターゲットとなる VM (Java バーチャルマシン)のバージョンを指定します。
- encoding: ソースコードのエンコーディングを指定します。
その他、設定できるオプションはこちら。