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 –