2016-12-06 38 views
1

我無法在tomcat 8上部署grails 2.5.0應用程序在linux機器上運行。相同的應用程序在Windows上運行良好。部署服務器啓動會因某些或其他類而失敗。我無法在Linux上使用java.lang.ClassFormatError在tomcat 8.0.36/8.0.24上部署grails應用程序:類文件中的魔術值不兼容


2016-11-29 05:09:06,234 [localhost-startStop-1] ERROR StackTrace - Full Stack Trace: 
java.lang.ClassFormatError: Incompatible magic value 0 in class file MarkdownGrailsPlugin$_closure1$_closure2 
    at java.lang.ClassLoader.defineClass1(Native Method) 
    at java.lang.ClassLoader.defineClass(ClassLoader.java:800) 
    at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142) 
    at org.apache.catalina.loader.WebappClassLoaderBase.findClassInternal(WebappClassLoaderBase.java:2541) 
    at org.apache.catalina.loader.WebappClassLoaderBase.findClass(WebappClassLoaderBase.java:858) 
    at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1301) 
    at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1166) 
    at MarkdownGrailsPlugin$_closure1.doCall(MarkdownGrailsPlugin.groovy:59) 
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

是越來越錯誤不會與我有什麼Windows機器上deployment.But後,當我在WEB-INF/classes服務器開始添加類文件匹配類文件的校驗和,但它在加載一些其他資源失敗或者在GSP彙編中。同樣的應用程序,同樣的戰爭在windows上和linux的虛擬機上工作得很好。

JDK/JRE甚至補丁級別在windows,linux機器上都是一樣的。是否有任何os參數必須增加。

問題出現在linux機器上的JDK/JRE的詳細信息。

29-Nov-2016 05:07:40.966 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Server version:  Apache Tomcat/8.0.36 
29-Nov-2016 05:07:40.968 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Server built:   Jun 9 2016 13:55:50 UTC 
29-Nov-2016 05:07:40.968 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Server number:   8.0.36.0 
29-Nov-2016 05:07:40.968 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log OS Name:    Linux 
29-Nov-2016 05:07:40.968 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log OS Version:   2.6.18-416.el5 
29-Nov-2016 05:07:40.969 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Architecture:   amd64 
29-Nov-2016 05:07:40.969 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Java Home:    /usr/java/jdk1.7.0_79/jre 
29-Nov-2016 05:07:40.969 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log JVM Version:   1.7.0_79-b15 
29-Nov-2016 05:07:40.969 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log JVM Vendor:   Oracle Corporation 
29-Nov-2016 05:07:40.969 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log CATALINA_BASE:   /home/tomcat8/apache-tomcat-8.0.36 
29-Nov-2016 05:07:40.969 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log CATALINA_HOME:   /home/tomcat8/apache-tomcat-8.0.36 
29-Nov-2016 05:07:40.970 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.util.logging.config.file=/home/tomcat8/apache-tomcat-8.0.36/conf/logging.properties 
29-Nov-2016 05:07:40.970 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager 
29-Nov-2016 05:07:40.970 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Xms2g 
29-Nov-2016 05:07:40.970 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Xmx4g 
29-Nov-2016 05:07:40.971 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -XX:MaxPermSize=1024m 
29-Nov-2016 05:07:40.971 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dhttp.proxyHost=www-proxy.sct.com 
29-Nov-2016 05:07:40.971 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dhttp.proxyPort=8080 
29-Nov-2016 05:07:40.971 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djdk.tls.ephemeralDHKeySize=2048 
29-Nov-2016 05:07:40.971 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Xms2g 
29-Nov-2016 05:07:40.971 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Xmx4g 
29-Nov-2016 05:07:40.971 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -XX:MaxPermSize=1024m 
29-Nov-2016 05:07:40.972 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dhttp.proxyHost=www-proxy.sct.com 
29-Nov-2016 05:07:40.972 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dhttp.proxyPort=8080 
29-Nov-2016 05:07:40.972 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcom.sun.management.jmxremote 
29-Nov-2016 05:07:40.972 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcom.sun.management.jmxremote.port=8999 
29-Nov-2016 05:07:40.972 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcom.sun.management.jmxremote.ssl=false 
29-Nov-2016 05:07:40.972 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcom.sun.management.jmxremote.authenticate=false 
29-Nov-2016 05:07:40.972 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.rmi.server.hostname=149.24.37.131 
29-Nov-2016 05:07:40.973 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.endorsed.dirs=/home/tomcat8/apache-tomcat-8.0.36/endorsed 
29-Nov-2016 05:07:40.973 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcatalina.base=/home/tomcat8/apache-tomcat-8.0.36 
29-Nov-2016 05:07:40.973 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcatalina.home=/home/tomcat8/apache-tomcat-8.0.36 
29-Nov-2016 05:07:40.973 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.io.tmpdir=/home/tomcat8/apache-tomcat-8.0.36/temp

同樣的應用程序在Windows機器

30-Nov-2016 22:17:29.007 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Server version:  Apache Tomcat/8.0.36 
30-Nov-2016 22:17:29.009 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Server built:   Jun 9 2016 13:55:50 UTC 
30-Nov-2016 22:17:29.010 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Server number:   8.0.36.0 
30-Nov-2016 22:17:29.011 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log OS Name:    Windows 8.1 
30-Nov-2016 22:17:29.012 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log OS Version:   6.3 
30-Nov-2016 22:17:29.012 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Architecture:   amd64 
30-Nov-2016 22:17:29.013 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Java Home:    C:\Program Files\Java\jdk1.7.0_79\jre 
30-Nov-2016 22:17:29.013 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log JVM Version:   1.7.0_79-b15 
30-Nov-2016 22:17:29.014 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log JVM Vendor:   Oracle Corporation 
30-Nov-2016 22:17:29.014 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log CATALINA_BASE:   C:\sandbox\apache-tomcat-8.0.36 
30-Nov-2016 22:17:29.015 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log CATALINA_HOME:   C:\sandbox\apache-tomcat-8.0.36 
30-Nov-2016 22:17:29.015 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -XX:MaxPermSize=1024m 
30-Nov-2016 22:17:29.016 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -XX:PermSize=512m 
30-Nov-2016 22:17:29.016 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Xms2048m 
30-Nov-2016 22:17:29.017 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Xmx4096m 
30-Nov-2016 22:17:29.017 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -DPROXY_SERVER_NAME= http://m039220:8081/nexus/content/groups/public 
30-Nov-2016 22:17:29.017 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djdk.tls.ephemeralDHKeySize=2048 
30-Nov-2016 22:17:29.018 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.util.logging.config.file=C:\sandbox\apache-tomcat-8.0.36\conf\logging.properties 
30-Nov-2016 22:17:29.019 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager 
30-Nov-2016 22:17:29.027 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Xms512m 
30-Nov-2016 22:17:29.029 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Xmx1524m 
30-Nov-2016 22:17:29.035 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -XX:PermSize=256m 
30-Nov-2016 22:17:29.036 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -XX:MaxPermSize=1024m 
30-Nov-2016 22:17:29.042 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -XX:+CMSClassUnloadingEnabled 
30-Nov-2016 22:17:29.049 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -XX:+UseConcMarkSweepGC 
30-Nov-2016 22:17:29.050 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -XX:-UseGCOverheadLimit 
30-Nov-2016 22:17:29.086 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.endorsed.dirs=C:\sandbox\apache-tomcat-8.0.36\endorsed 
30-Nov-2016 22:17:29.087 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcatalina.base=C:\sandbox\apache-tomcat-8.0.36 
30-Nov-2016 22:17:29.093 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcatalina.home=C:\sandbox\apache-tomcat-8.0.36 
30-Nov-2016 22:17:29.095 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.io.tmpdir=C:\sandbox\apache-tomcat-8.0.36\temp
上工作正常是否有我需要檢查任何本地庫或者說我需要進行調整一些參數的操作系統?

回答

0

很可能該類已針對Java 8進行了編譯,並且您的JVM是Java 7.這可能是Grails(Markdown插件)分發中的錯誤,或者您混合了版本。

+0

編譯在相同版本的JDK上。 – nsivaram90

0

問題在於服務器上打開的文件。在VM中,該值設置爲4096,其中我們正面臨問題的服務器上設置爲1024.

將打開的文件增加到4096後,服務器開始工作。戰爭中的應用程序似乎很重,有15000多個文件。

相關問題