Javaの旧バージョンのコンパイル

J2SE1.5でターゲット指定してコンパイルすると以下のエラーがでちゃいました。


ターゲットリリース1.1がデフォルトのソースリリース1.5と競合しています

だそうです。


SUNのJavaはVer.1.1から1.2に変わるときに大きな変更があって、新しいバージョン(2005/3/20ではVer.1.5になっている)でコンパイルしたJavaアプレットの表示が古い環境しかないPCだとうまく表示されないという問題があった。
この問題を回避するため 
javac -target 1.1 Nantoka.java
というようにすると、古い形式でコンパイルしてくれるのであった。

ところが、Java 1.5でこれをやると「ターゲットリリース1.1がデフォルトのソースリリース1.5と競合しています」というエラーが出て、コンパイルしてくれない。
こういうときは
javac -target 1.1 -source 1.2 Nantoka.java
というように、-targetオプション以外に -sourceオプションをつけてやれば旧形式でコンパイルしてくれる。(source のバージョンは1.3でも可)

だそうです。