0

我有一段代码已经用java 1.5版编译(在maven编译插件上源和目标都设置为1.5)

<source>1.5</source>
<target>1.5</target>

我现在要做的是为一个应用程序编译它们(源代码是一个主应用程序的插件),它已升级到 java 版本 1.6

在这种情况下;

我需要使用带有参数的编译插件吗?

<source>1.5</source>
<target>1.6</target>

或者

<source>1.6</source>
<target>1.6</target>

加; 我是否需要设置 java home 和 java 1.6 的路径或插件将使用正确的工件(可能通过下载)为 java 1.6 编译?

问候..

4

3 回答 3

1

首先,您不必在 Java 1.6 上重新编译。当在 Java 1.6 平台上运行的 Java 1.6 应用程序使用时,使用 Java 1.5 编译的 Maven 工件可能会正常工作。

如果您确实想重新编译,那么任何一种组合都应该有效。事实上,它们在所有意图和目的上都是相同的,因为 Java 1.5 和 1.6 之间的语言没有相关的变化。但是,在 Java 1.6 上编译和运行单元测试是有价值的……以防万一某些库更改导致您的代码在较新的平台上失败。

于 2011-12-11T13:03:02.103 回答
0

你应该在你的 JAVA_HOME 中使用 Java 1.6,如果你使用 1.5 的目标/源,你的插件应该运行,这应该运行 1.6。除非您使用 Java 1.6 中的特定内容(例如 String.isEmpty())...

于 2011-12-11T11:57:02.470 回答
0

始终在 pom.xml 文件中设置源和目标

<properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <maven.compiler.source>1.7</maven.compiler.source>
    <maven.compiler.target>1.8</maven.compiler.target>
</properties>
于 2014-12-04T00:09:34.440 回答