2016-10-01 61 views
0

我已经编译代码:export JAVA_HOME=/usr/lib/jvm/java-8-oracle; mvn package。我有:不支持major.minor版本52.0 mvn java SE 8

Apache Maven 3.0.5 
Maven home: /usr/share/maven 
Java version: 1.8.0_101, vendor: Oracle Corporation 
Java home: /usr/lib/jvm/java-8-oracle/jre 
Default locale: cs_CZ, platform encoding: UTF-8 
OS name: "linux", version: "3.16.0-77-generic", arch: "amd64", family: "unix" 

但我发现了一个错误的java -jar ...运行后:Unsupported major.minor version 52.0 有谁知道我做错了什么?我读过这个错误,当编译在老版本的java中时出现,但运行在新的java中,反之亦然,但是我在这两种情况下都使用了java 8。

+0

好像你的JRE版本是不同的。 –

+0

你使用maven编译器插件吗? –

回答

2

为您的系统设置的默认Java VM与运行mvn(java8)时使用的Java VM不同(java7或更低版​​本)。

您既可以运行

/usr/lib/jvm/java-8-oracle/bin/java -jar 

或在〜/ .mavenrc

JAVA_HOME=/usr/lib/jvm/java-8-oracle 

如果您正在运行Ubuntu,解决它 “永远”,你应该用这个命令设置JAVA_HOME为根:

sudo update-alternatives --config java 

会显示在您的系统上安装Java的替代品,你就可以设置哪一个应该是默认的(java8在你的情况)。

您可能需要为其他Java命令,比如做同样的:

sudo update-alternatives --config javac 
sudo update-alternatives --config java_vm 
sudo update-alternatives --config jcontrol 
sudo update-alternatives --config jexec 
+0

不幸的是,它不能解决问题... $ export JAVA_HOME =/usr/lib/jvm/java-8-oracle; java -jar target/corpproc-1.0-SNAPSHOT -jar -with-dependencies.jar -c src/main/resources/config.yaml index/mnt/data/indexes/wikipedia/xpanov00/final2// mnt/data/indexes /维基百科/ xpanov00/final2/final/ 线程“main”中的异常java.lang.UnsupportedClassVersionError:cz/vutbr/fit/knot/corpproc/cli/Cli:Unsupported major.minor version 52.0 –

+0

'which java '? – David

+0

是:仓版权DB包括javafx-src.zip JRE的lib许可人的README.html发布src.zip THIRDPARTYLICENSEREADME-JAVAFX.txt THIRDPARTYLICENSEREADME.txt –

相关问题