あなたは正しい球場にいます。ここを見て:
http://maven.apache.org/plugins/maven-compiler-plugin/examples/compile-using-different-jdk.html
実行可能ファイルのファイルシステム パスをハードコーディングしないようにするために、プロパティを使用できます。例えば:
<executable>${JAVA_1_4_HOME}/bin/javac</executable>
次に、各開発者は、このプロパティを settings.xml で定義するか、環境変数を設定して、ビルドの移植性を維持します。
<settings>
[...]
<profiles>
[...]
<profile>
<id>compiler</id>
<properties>
<JAVA_1_4_HOME>C:\Program Files\Java\j2sdk1.4.2_09</JAVA_1_4_HOME>
</properties>
</profile>
</profiles>
[...]
<activeProfiles>
<activeProfile>compiler</activeProfile>
</activeProfiles>
</settings>
別の JDK でビルドする場合は、jar ファイルのマニフェストをカスタマイズすることをお勧めします。
キーは明示的に設定していると思います<executable>
。そして、環境変数やその他の句をいじることなく、おそらくハードコーディングできるのではないかと思います。
このリンクも参照して、サンプルの「実行可能ファイル」を見てくださいpom.xml
。
Mavenコンパイラで使用されるJDKのバージョンはどこで指定されていますか?