我在终端中键入mvn-v
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)
java version "1.8.0_102"
Java(TM) SE Runtime Environment (build 1.8.0_102-b14)
Java HotSpot(TM) 64-Bit Server VM (build 25.102-b14, mixed mode)
所以这应该都是正确的,对吧?你知道我可能漏掉了什么吗?
编辑:事实证明,我的.bash_profile
中缺少导出java_home
行。由于下面的正确答案,修复了。
首先,出现异常是因为正在加载的库对于运行的Java版本来说太新了。版本51.0是Java7,因此MVN
必须与Java6或更早版本一起运行。无论您认为java_home
是什么,这一点都不存在争议。
命令mvn
是执行mvn
Java可执行文件的shell脚本。它很短,很容易理解。
您可以通过插入
echo "$JAVA_HOME"
echo "$JAVACMD"
"$JAVACMD" -version
exec "$JAVACMD" ....
/System/Library/Frameworks/JavaVM.framework/Versions/CurrentJDK/Home
这是基于Java1.6的Apple JDK的位置。解决该问题的正确方法是确保JAVA_HOME在正确的.profile
或.bash_profile
中正确设置,这取决于您使用的shell。
以下是我的.profile
,删除了所有与mvn无关的位。
JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8/Contents/Home
M2_HOME=/usr/local/maven
M2=$M2_HOME/bin
MAVEN_OPTS="-Xmx512M"
export M2_HOME M2 JAVA_HOME MAVEN_OPTS
PATH=$JAVA_HOME/bin:$HOME/bin:$PATH:$M2
EDITOR=vim
export EDITOR
我已经下载了程序: 解压缩它: 进入文件夹并运行: 这是我得到的错误: 我这样做过: 但是同样的错误 我的java版本: javac1.6。0_35 Java版本"1.6.0_35"OpenJDK运行时环境(IcedTea6 1.13.7) (6b35-1.13.7-1~Deb7u1)OpenJDK 64位服务器VM(build 23.25-b01,混合模式) 我读到这篇文章是因为我编译的版本比J
我的pom.xml: 似乎所有的设置都是正确的,我指的是在pom和服务器上的java版本。
当我试图编译我的GWT应用程序时,我得到的异常值低于异常值。知道吗?提前道谢。
问题内容: 我正在尝试构建一个应用程序,但是它给出了一些错误。我的JDK版本如下: 这是我的错误日志: 问题答案: 发生这种情况是因为在编译时JDK较高,而在运行时JDK较低。 以下是版本列表:
我打开JMeter,在日志中看到以下错误: jmeter.gui.util.MenuFactory:无法实例化com.atlantbh.jmeter.plugins.xmlformatter.gui.xmlformatpostProcessorGUI java.lang.unsupportedClassVersionError:kg/apc/jmeter/jmeterPluginsutils:不支
错误:(1,0)原因:com/android/build/gradle/libraryplugin:不受支持的Major.minor版本52.0 存档中 MyPath\AndroidStudioProjects\MyApp\App\libs\ColorPickerPreference\ColorPickerPreference\build.grad 和java版本 java版本“1.7.0_79”