我是靠谱客的博主 过时钢笔,最近开发中收集的这篇文章主要介绍UnsupportedClassVersionError: org/apache/maven/cli/MavenCli : Unsupported major.minor version 51.0,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

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所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(34)

评论列表共有 0 条评论

立即
投稿
返回
顶部