背景及問題現象
公司Nexus服務器被Reboot了,重啓後,Neuxs伺服器無法啓動。
使用.nexus start命令後,顯示Nexus啓動成功,但是訪問Web頁面後Nexus進程就停了。
問題查詢
查詢$NEXUS_HOME/logs/wrapper.log日誌,找到如下報錯日誌:
"Unsupported marjor.minoor version 5.0"錯誤
該錯誤是因爲低版本JDK無法加載高版本JDK引發的。NEXUS新版本要求:
- Nexus的2.6版本及其以後版本使用的Java的jdk7.
- Nexus的2.0-2.5版本
- 使用Java的jdk6的update30版本及其以後的jdk6版本
- 使用Java的jdk7的update2版本及其以後jdk7版本
解決方案
切換服務器JDK,發現$JAVAHOME本身就是JDK1.7了。只好去修改NEXUS的配置了,去$NEXUSHOME/bin/jsw/config目錄修改wrapper.conf文件。 找到:
# Set the JVM executable
# (modify this to absolute path if you need a Java that is not on the OS path)
wrapper.java.command=/usr/java/jdk1.7.0_60/bin/java
設置wrapper.java.command=改爲絕對路徑指定JVM程序。windows下要指定爲java.exe 再次啓動,成功。
注意,啓動完畢最好去wrapper.log下看下啓動日誌,因爲JVM啓動失敗,只用NEXUS start命令是看不出來的。