Eclipse + Maven:强制执行环境“JavaSE-1.6”而不是固定的JDK [英] Eclipse + Maven: force Execution Environment "JavaSE-1.6" instead of fixed JDK
问题描述
在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屋!