Maven在哪里寻找JDK?

时间:2014-08-29 16:22:39

标签: maven

第四次输入此消息,因为我要使用的这个糟糕的机器全天随机崩溃。一定要喜欢它。

我的开发环境JAVA_HOME设置为" c:jdk1.7.0_45" 在POM我有以下

<plugin>
  <groupId>org.apache.maven.plugins</groupId>
  <artifactId>maven-compiler-plugin</artifactId>
  <version>3.1</version>
  <configuration>
    <verbose>true</verbose>
    <fork>true</fork>
    <executable>${JAVA_HOME}\jdk1.7.0_45\bin\javac</executable>
    <compilerVersion>1.7</compilerVersion>
  <configuration>
</plugin>

但也尝试了

<plugin>
  <groupId>org.apache.maven.plugins</groupId>
  <artifactId>maven-compiler-plugin</artifactId>
  <version>3.1</version>
  <configuration>
    <source>1.7</source>
    <target>1.7</target>
  </configuration>
</plugin>

那么为什么我会收到错误:-source 1.5中不支持multi-catch语句? 我没有看到任何引用1.5的内容。

另外,我不清楚源和目标是什么只是假设的东西,maven-compiler-plugin代表的是相同的。

对于这些问题的任何直接回答都会非常感激,因为我是新人,并且不知道如何阅读我不了解的部分,因为我正在做的事情我不知道#39;不知道它叫什么,也不知道我要问的是我要查找什么。内部任何人都不知道如何使用Maven。在这种痛苦的环境中欣赏任何指导。

===========================

以下是我必须拥有它以便默认值1.5不执行的方法。 将JAVA_HOME更改为JDK 1.7路径。

<configuration>
    <forceJavacCompilerUse>true</forceJavacCompilerUse>
    <source>1.7</source>
    <target>1.7</target>
</configuration>

然而,其他需要1.6的项目现在已被打破。多么可怕的设置。

2 个答案:

答案 0 :(得分:1)

对于maven编译器插件,如here

所述
  

默认源设置为1.5,默认目标设置为   1.5

同样如链接中所述,您可以尝试配置"forceJavacCompilerUse"

答案 1 :(得分:1)

尝试使用

<properties>
    <maven.compiler.target>1.7</maven.compiler.target>
    <maven.compiler.source>1.7</maven.compiler.source>
    <maven.test.skip>true</maven.test.skip>
</properties>