java - 什么版本的 Maven 与 Java 6 兼容?

标签 java maven maven-2

我必须在一个需要 java 6 才能运行的旧项目中工作,因为有对已在未来版本中删除的折旧 sun 类的引用。作为该过程的一部分,我将系统路径中的 jdk 从 8 更改为指向 java 6 jdk。这样做之后我得到:

Exception in thread "main" java.lang.UnsupportedClassVersionError: org/apache/maven/cli/MavenCli : Unsupported major.minor version 51.0
    at java.lang.ClassLoader.defineClass1(Native Method)
    at java.lang.ClassLoader.defineClassCond(ClassLoader.java:637)
    at java.lang.ClassLoader.defineClass(ClassLoader.java:621)
    at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:141)
    at java.net.URLClassLoader.defineClass(URLClassLoader.java:283)
    at java.net.URLClassLoader.access$000(URLClassLoader.java:58)
    at java.net.URLClassLoader$1.run(URLClassLoader.java:197)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
    at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClassFromSelf(ClassRealm.java:401)
    at org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy.loadClass(SelfFirstStrategy.java:42)
    at org.codehaus.plexus.classworlds.realm.ClassRealm.unsynchronizedLoadClass(ClassRealm.java:271)
    at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass(ClassRealm.java:254)
    at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass(ClassRealm.java:239)
    at org.codehaus.plexus.classworlds.launcher.Launcher.getMainClass(Launcher.java:144)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:266)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:229)
    at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:415)
    at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:356) 

这类似于 Maven Installation OSX Error Unsupported major.minor version 51.0Exception in thread "main" java.lang.UnsupportedClassVersionError: a (Unsupported major.minor version 51.0)但是我不打算升级,我正在寻找与 java 6 兼容的 maven 版本。关于哪个版本兼容以及我可以从哪里下载/安装 mac 的任何想法?

最佳答案

根据 the Maven release history page ,最后一个与 JDK1.6 一起工作的 Maven 版本是 3.2.5。

请注意,最好继续使用较新的 Maven 版本(并将 Java 8 保留为系统路径中的默认版本),并告诉 Maven 它正在构建的项目应该将源代码设置为 1.6 进行编译 - 请参阅 source and target documentation获取更多信息。恢复到旧的 Maven 将删除新版本的错误修复/增强。

关于java - 什么版本的 Maven 与 Java 6 兼容?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36141186/

相关文章:

java - Spring 父级的依赖项中缺少版本

java - Sonar 不显示代码覆盖率

eclipse - java.lang.NoClassDefFoundError maven + eclipse

java - SBT下载jar包时如何显示下载进度?

java - Executors.newFixedThreadPool - 问题

java - Spring MVC 和 Apache Tiles - 404 错误

java - 严重 : Context [/example] startup failed due to previous errors

java - 如何创建2个单独的war文件

Java - 将数字与字符串分开

java - 无法引用 GWT 中 Maven 项目的 "target"文件夹中生成的类文件