2016-10-01 105 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 –

相關問題