1
我知道有StackOverflow上提供瞭解決這個問題(我已經通過下面這些解決方案來到此地)很多問題,但我仍然stuck.The應用程序運行正常在本地我的機器,但我不能讓它在Ubuntu服務器上工作。這裏是我已經做了解決這個問題:Tomcat7開始用不正確的Java版本
- 我知道
Unsupported major.minor version 52.0
意味着有與Java版本衝突。我通過在我的Ubuntu服務器上安裝Java 1.8並將其設置爲默認Java來解決此問題。 - 我的
java -version
和javac -version
是Ubuntu服務器上的1.80_40
和我本地機器上的1.8.0_31
。 - 我
$JAVA_HOME
Ubuntu的服務器上的路徑是/usr/lib/jvm/java-8-oracle/
- 我這樣做後,重新啓動Tomcat和Postgres的
這裏是部署我的WAR文件後,我得到的錯誤(不是說有什麼關係?):
java.lang.UnsupportedClassVersionError: com/appname/servlets/getServlet: Unsupported major.minor version 52.0 (unable to load class com.appname.servlets.getServlet)
org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLoader.java:2948)
org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:1208)
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1688)
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1569)
org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:490)
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:98)
org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:950)
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408)
org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1040)
org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:607)
org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:315)
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
java.lang.Thread.run(Thread.java:745)
編輯:請不要將其標記爲重複。我覺得我的問題是別的,因爲我知道它是在相同版本(Java 1.8)上編譯和運行的。
你是如何正確運行你的應用程序?你的服務器上安裝了較老的java版本嗎?你確定這些應用程序沒有使用較老的Java版本(也許有人硬編碼他們到一些啓動腳本?) –
@MateuszDymczyk - 當我用鼠標右鍵單擊項目>在NetBeans屬性,我看到Java平臺是JDK 1.8中庫標籤。在Sources選項卡中,我將Source/Binary Format看作JDK 8. – mapr
這是因爲在編譯時java的目標版本高於您現在嘗試運行的版本。 (例如:編譯的目標版本Java 1.8並在Java 1.7中運行) 請參閱此問題。 http://stackoverflow.com/questions/22489398/unsupported-major-minor-version-52-0 –