概述
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:631)
at java.lang.ClassLoader.defineClass(ClassLoader.java:615)
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)
at org.codehaus.classworlds.Launcher.main(Launcher.java:47)
Maven版本和JDK版本不匹配
major.minor version 51.0 对应的是JDK1.7
major.minor version 50.0 对应的是JDK1.6
先了解一下java的version分别对应的版本号,这个很重要,版本冲突在项目移植中经常遇到。
J2SE 8 = 52,
J2SE 7 = 51,
J2SE 6.0 = 50,
J2SE 5.0 = 49,
JDK 1.4 = 48
看到“Unsupported major.minor version 51.0”首先想到的是jdk1.7版本;按照平常的想法,修改了编译器compiler也为1.6,将jdk和jvm都设为1.6但是还是报错。去网上查询说法,原因很明显是因为编译和运行的版本冲突,只需要修改为同版本就行了。
尝试将jdk修改为1.7,成功运行项目。平时个人练习的话可以任意修改java的版本号,但是因为公司服务器上面的版本号规定是1.6了,高版本的程序是无法在上面跑起来的,陷入了两难的境况。
那么又是什么原因导致了项目上面最低只能部署jdk为1.7。
参考:https://blog.csdn.net/mjm_1251162714/article/details/86509385
修改Maven配置
添加maven的默认配置,更改为本地的maven
设置setting.xml
设定MavenRepository
创建maven项目:new→other→maven project→两个next→选择maven-archetype-quickstart→设置基本数据
运行pom.xml文件,右键pom.xml→run as→maven build,控制台会出现如下报错,这是因为我们要为jre的-Dmaven.multiModuleProjectDirectory传一个参数,即maven的环境变量。
转自:https://www.cnblogs.com/yangmingyu/p/6908519.html
解决方法:修改JDK,添加VM arguments
运行run as→maven build→compile
最后
以上就是过时钢笔为你收集整理的UnsupportedClassVersionError: org/apache/maven/cli/MavenCli : Unsupported major.minor version 51.0的全部内容,希望文章能够帮你解决UnsupportedClassVersionError: org/apache/maven/cli/MavenCli : Unsupported major.minor version 51.0所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复