【问题标题】:Java source 1.8 and Target 1.6 is it possible in maven [duplicate]Java源1.8和Target 1.6在maven中是可能的[重复]
【发布时间】:2019-01-30 13:36:23
【问题描述】:

我有一个用 java 8 编码的 java 应用程序,但我们使用的 weblogic 容器只支持 java 1.6,请告诉我是否有任何方法可以在 Java 8 中编译我的源代码并强制它与java 1.6 使用 maven 作为 1.8 的源和 1.6 的目标?

<build>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>3.6.1</version>
            <configuration>
                <source>1.8</source>
                <target>1.6</target>
            </configuration>
        </plugin>
    </plugins>
</build>

【问题讨论】:

  • 我怀疑 Java 8 代码会被转换为 6 作为字节码。你试过了吗?

标签: java maven


【解决方案1】:

不是,这是javac本身的限制,与maven无关。

有一些选项可以尝试使用 j1.8 功能,然后将其编译为 j1.6/j1.7 JVM,请参阅 Can Java 8 code be compiled to run on Java 7 JVM?

但是,请注意,JDK8 即将报废,而 JDK6/7 也即将消失。你真的应该解决这个问题。您的容器存在安全问题的严重风险(因为 JDK6 和 7 不再收到安全补丁)。

【讨论】:

    【解决方案2】:

    您可以在 Java 8 上运行 Java 6 应用程序, 但是 Java 8 的特性在 Java 6 上不可用。

    JVM 说不。 ;)

    【讨论】:

      猜你喜欢
      • 2017-07-22
      • 2015-10-28
      • 2019-02-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-08-02
      • 2023-03-27
      • 2016-01-20
      相关资源
      最近更新 更多