web-dev-qa-db-ja.com

Eclipse JREシステムライブラリ[J2SE-1.5]

M2eプラグインがインストールされたEclipse EE 3.7を使用しています。 EclipseでJDK7を設定しています。 Mavenプロジェクトをインポートすると、JREが_JRE System Library [J2SE-1.5]_に設定されるため、Java 6関連のものに関するコンパイルの問題が発生します。代わりに、EclipseのJREをデフォルトでJRE _System Library [J2SE-1.6]_

Eclipse File-> new-> Javaプロジェクトの最初の画面でプロジェクトを開くと、JREを選択するオプションがあり、3番目のオプションはUse default JRE (currently 'jdk1.7.0_03')です

これから、EclipseのデフォルトJREは1.7であることがわかりますが、新しいMavenプロジェクトをインポートすると、JREはデフォルトで1.5に設定されます。

任意のヘルプ、これを行うにはどうすればよいですか?

40

問題はEclipseではなく、インポートするプロジェクトにあります。 m2eは、mavenプロジェクトに一致するようにプロジェクトのJREを設定します。 POMはJREバージョンを指定し、存在しない場合はデフォルトで1.5になります。 POMでこれが必要です。

<build>
     <plugins>
        <plugin>
                <groupId>org.Apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.0</version>
                <configuration>
                   <source>1.7</source>
                   <target>1.7</target>
                </configuration>
        </plugin>
    </plugins>
</build>
80
artbristol

artbristolは正しい答えを出しました(そして私は彼を支持しました)。

これは2012年でした。以下は、今日により適した更新です(2016、Java 8、Spring 4.x/Servlet 3.x):

<plugin>
   <groupId>org.Apache.maven.plugins</groupId>
   <artifactId>maven-compiler-plugin</artifactId>
   <version>3.0</version>
   <configuration>
      <source>1.7</source>
      <target>1.7</target>
   </configuration>
</plugin>
6
paulsm4

この問題の根本的な原因は、Eclipseがpomから.classpathファイルを更新するときにmaven.compiler.sourceプロパティの有効な値を解決できないことであり、単にデフォルトのi.eを使用していることです

org.Eclipse.jdt.launching.JRE_CONTAINER/org.Eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5.

次のプロパティをpom.xmlに追加してプロジェクトを更新するだけです

<properties>
            <javaVersion>1.8</javaVersion>
            <maven.compiler.source>${Java.version}</maven.compiler.source>
            <maven.compiler.target>${Java.version}</maven.compiler.target>
</properties>
0
Jay Prakash