问题:当我将war部署到tomcat7时,我得到了错误java.lang.UnsupportedClassVersionError: org.MyLibraryClass :不支持的major.minor版本51.0
(这是使用比运行代码时使用的java更新版本编译java时所遇到的错误。)
情况,以便:
ubuntu@ubuntu:/home$ /usr /share/Tomcat 7/bin/catalina.sh版本使用CATALINA_BASE: /usr/share/Tomcat 7使用CATALINA_HOME: /usr/share/Tomcat 7使用CATALINA_TMPDIR: /usr/share/Tomcat 7/temp使用JRE_HOME: /usr使用CLASSPATH: /usr服务器版本: Apache /7.0。26服务器构建:2012年7月19日03:21:30服务器编号: 7.0.26.0操作系统名称: Linux版本:3.2.0-29-通用架构: amd64 JVM版本:1.7.0_07-b10JVM供应商: Oracle
现在我被困住了。我不明白为什么任何java代码都不能在oracle的jre7上运行。
我的war是一个全新的非常基本的hello Grails2.1应用程序,它有一个maven依赖项(org.MyLibraryClass),它是用jdk7编译的。这就是我得到错误的原因。
在grails中,我将BuildConfig.groovy改为1.7而不是1.6:
grails.project.target.level = 1.7 grails.project.source.level = 1.7
然后进行了清理,重建,战争,重新部署。没有变化。
知道接下来该试试什么吗?
发布于 2013-10-09 12:36:29
使用Java7编译代码并在Java6下运行时典型的错误。
发布于 2012-10-14 20:53:04
在您的查询中,关键的一行是这个,我认为:
sudo service tomcat7 start我认为这可能触发了系统中仍然存在的OpenJDK的继承。你想要做的是尝试从你自己的环境。
以普通用户身份登录
java -version
/usr/share/tomcat7/bin/startup.sh检查一下。您还应该以干净的用户身份登录、根用户或其他地方登录,并检查java -version进行检查。
如果所有其他操作都失败了,请转到/etc/profile,并确保路径到Oracle的Java/bin目录是环境路径变量中的第一件事。
发布于 2013-12-04 03:31:03
我刚才也有同样的问题,但现在已经解决了。
请检查这个符号
/usr/lib/jvm/default
它的默认链接是打开的-- jdk,重置正确的jdk目录。
祝好运!
https://stackoverflow.com/questions/12886308
复制相似问题