JavaFXアプリケーションの開発には、JDK 8ビルドb116とともに 4.3.1 Eclipseのスナップショット を使用しています。私のワークスペースプロジェクトでは、ビルドパスに含まれるJREライブラリが常にJava 1.4にリセットされます:
残念ながら、これは一時的にしか修正できません(次のEclipseの再起動まで):
私のpomファイルのビルドセクションには次のものがあります:
<plugin>
<groupId>org.Apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.1</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
<debug>true</debug>
<debuglevel>source,lines</debuglevel>
</configuration>
</plugin>
揮発性の低いソリューションをいただければ幸いです。
[UPDATE]この問題は、現在のバージョンで修正されているようです
Maven Eclipseプラグイン(m2e)は、mavenコンパイラプラグインの<source>
および<target>
プロパティに応じてJava実行環境)を選択します。
問題は、Keplerで利用可能な1.8実行環境も、m2e mavenコンパイラコネクタもまだマッピングできないことです。
したがって、ケプラーとm2eでサポートされるまで、2つのソリューションがあります。
Mavenで環境を1.4に変更し、1.8 JDKを実行環境J2SE-1.4にマッピングします。その後、プロジェクトは正しいJDKを使用します。ただし、1.4に依存するすべてのプロジェクトは、もちろん1.8 JDKを使用します。
pluginManagenent
を使用して、maven-compiler-plugin
ライフサイクル処理をオフにします。これにより、m2eプラグインが実行環境を更新できなくなり、手動で設定できます。
<pluginManagement>
<plugins>
<plugin>
<groupId>org.Eclipse.m2e</groupId>
<artifactId>lifecycle-mapping</artifactId>
<version>1.0.0</version>
<configuration>
<lifecycleMappingMetadata>
<pluginExecutions>
<pluginExecution>
<pluginExecutionFilter>
<groupId>org.Apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<versionRange>[1.0.0,)</versionRange>
<goals>
<goal>compile</goal>
</goals>
</pluginExecutionFilter>
<action>
<ignore />
</action>
</pluginExecution>
</pluginExecutions>
</lifecycleMappingMetadata>
</configuration>
</plugin>
</plugins>
</pluginManagement>