1. 程式人生 > >HanLP MVN eclipse中major.minor 51(JDK 要求1.7以上)的錯誤解決

HanLP MVN eclipse中major.minor 51(JDK 要求1.7以上)的錯誤解決

環境背景:系統:優勝美地,安裝了jdk8,7,6,5,4

問題描述:mvn3.3.9 eclipse build出現錯誤

結論:mvn3.3.9 在jdk1.8下可以執行,問題出在了eclipse的專案上,專案是從GIT上載下來的(HanLP),專案本身用的是jdk1.6(開始沒有意識到),然後本機的mvn是jdk1.8,將eclipse的jdk改為1.7依然報錯,後來發現專案的jdk才是問題所在,改完後ok,所以一致性包括(mvn,系統jdk,應用jdk,IDEjdk)

系統jdk的切換辦法如下(Bash):

只在bash層面有效,換個bash得重新來

#確認jdk版本,試探下

/usr/libexec/java_home

#會得到下面資訊(不同版本顯示不一樣)

/Library/Java/JavaVirtualMachines/jdk1.7.0_60.jdk/Contents/Home

#上面是1.7版本jdk,可以使用 -v 標識來獲取其他已安裝版本jdk,如:系統自帶的1.6版本jdk

/usr/libexec/java_home -v ‘1.6*’

#會得到下面資訊(Mac OS X 10.9.4自帶的1.6jdk)

/System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home

獲取以上資訊後開始建立配置檔案

#建立.bash_profile配置檔案(已經有該檔案就跳過此步驟)

touch ~/.bash_profile

#vim編輯.bash_profile檔案

vim ~/.bash_profile

#如果不習慣vim命令就使用自帶的文字編輯器開啟

open ~/.bash_profile

#將下面內容輸入到.bash_profile裡面

Mac預設 JDK 6(Mac預設自帶了一個jdk6版本)

export JAVA_6_HOME=$(/usr/libexec/java_home -v 1.6)

設定 JDK 7

export JAVA_7_HOME=$(/usr/libexec/java_home -v 1.7)

設定 JDK 8

export JAVA_8_HOME=$(/usr/libexec/java_home -v 1.8)

#預設JDK 7

export JAVA_HOME=$JAVA_7_HOME

#alias命令動態切換JDK版本

alias jdk6=“export JAVA_HOME=$JAVA_6_HOME”

alias jdk7=“export JAVA_HOME=$JAVA_7_HOME”

alias jdk8=“export JAVA_HOME=$JAVA_8_HOME”

#輸入完成後儲存執行下面命令

#重新執行.bash_profile檔案

source ~/.bash_profile

#切換直接終端輸入jdk8或jdk7來切換jdk版本

系統環境中永久配置(/etc/profile)

環境變數要再etc目錄下的profile檔案中配置,這樣才是永久的配置。

cd /etc

vi profile

許可權不夠請 sudo vi profile

輸入如下內容:

JAVA_HOME=/System/Library/Frameworks/JavaVM.framework/Versions/1.6.0/Home

export JAVA_HOME

然後退出或重新開個終端,即可看見

eclipse中環境(preference中java compiler,修改eclipse和專案的jdk level,在同一個介面)

然後mvn clean build,世界都安靜了

文章來源於網路