开发者

Eclipse + Maven: force Execution Environment "JavaSE-1.6" instead of fixed JDK

I'm using Eclipse as IDE and Maven outside of it to keep all dependencies up to date and update the Eclipse-project as such. In Eclipse I usually specify the JRE system library as an execution environment for any Java-project, usually "JavaSE-1.6".

In the pom.xml I use the following lines:

        <plugin>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>2.3.2</version>
            <configuration>
                <source>1.6</source>
                <target>1.6</target>
            </configuration>
        </plugin>
        <plugin>
            <artifactId>maven-eclipse-plugin</artifactId>
            <version>2.8</version>
            <configuration>
                <projectNameTemplate>[groupId].[artifactId]</projectNameTemplate>
                <downloadJavadocs>true</downloadJavadocs>
                <wtpversion>2.0</wtpversion>
            </configuration>
        </plugin>

This seems to let Maven pick a JDK matching 1.6. It assigns its system libraries to the classpath of the project. However, it uses jdk1.6.20 directly rather than JavaSE-1.6.

Is there a way to make Maven use JavaSE-1.6 instead?


EDIT: Here's the batch file that I use to run Maven:

SET JAVA_HOME=C:\Programme\java\jdk1.6.0_20
SET MAVEN_HOME=C:\Programme\apache-maven-2.2.1
SET MAVEN_OPTS=-Xmx512m -XX:MaxPermSize=128m
SET PATH=%JAVA_HOME%\bin;%MAVEN_HOME%\bin;%PATH%

SET EXTRA_MVN_OPTS=-Dmaven.test.skip=true

CD /D "%~dp0"
cmd /c mvn %EXTRA_MVN_OPTS% eclipse:clean eclipse:eclipse
cmd /c mvn %EXTRA_MVN_O开发者_如何学编程PTS% clean install


You can do it by setting a classpath container.

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-eclipse-plugin</artifactId>
    <version>2.8</version>
    <configuration>
        <classpathContainers>
           <classpathContainer>
    org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6
           </classpathContainer>
        </classpathContainers>
    </configuration>
</plugin>

Reference:

  • eclipse:eclipse Mojo > classpathContainers


Go into Window > Preferences > Java > Installed JREs > Execution Environments

Select JavaSE-1.6, click the checkbox on the right that should indicate "perfect match"

then use "update project configuration" from the maven menu.


Since you are using maven and eclipse, perhaps you should use M2Eclipse plugin. The maven project (built by maven by setting JAVA_HOME=C:\Program Files\Java\jdk1.6.0_23) imported in Eclipse, shows up with JRE System Library as JavaSE-1.6

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜