Eclipse + Maven:强制执行环境“JavaSE-1.6”而不是固定的JDK [英] Eclipse + Maven: force Execution Environment "JavaSE-1.6" instead of fixed JDK

查看:490
本文介绍了Eclipse + Maven:强制执行环境“JavaSE-1.6”而不是固定的JDK的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在使用Eclipse作为IDE和Maven,以保持所有依赖关系是最新的,并更新Eclipse项目。在Eclipse中,我通常将JRE系统库指定为任何Java项目的执行环境,通常是JavaSE-1.6。



在pom.xml中,我使用以下行:

 < 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>

这似乎让Maven选择了匹配1.6的JDK。它将系统库分配给项目的类路径。但是,它直接使用jdk1.6.20而不是JavaSE-1.6。



有没有办法让Maven使用JavaSE-1.6?






编辑:
这是我用来运行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_OPTS%clean安装


解决方案

可以通过设置classpath容器来实现。

 < 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>

参考:




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_OPTS% 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 + Maven:强制执行环境“JavaSE-1.6”而不是固定的JDK的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆