今天发布上项目的一个综合监管系统时,出现了大量的问题,被搞的情绪不好,先是同事发给的war包缺少文件,后来就是tomcat部署上出现了问题。因为该系统是采用java框架做的,目前客户方没有采购好的发布器。所以只能使用开源的apache tomcat。

       因为自己是搞c++的,任务下来只能接受了,就硬着头皮去布署呀,大哭大哭……,不在多说我们先说说总共有那些错误

      1、第一个错误:java.lang.UnsatisfiedLinkError: C:\KQCO\tomcat7\bin\tcnative-1.dll: Can't load I A 32-bit.dll on a AMD 64-bit platform。 

        解决方案:这个错误是因为在64位的系统不能加载32位的.dll 这个dll就是tcnative-1.dll。 这个动态库就是在tomcat目录下面的bin目录下。因为需要在服务端部署所以就重新下载了一个64bit的tcnative-1.dll. 下载链接我就不放了,因为这个一直在更新,链接时间一长就会失效。

      2、第二个错误:validateJarFile jar not loaded  其实也不能算错误,应该是tomcat加载jar包的机制吧,当tomcat启动起来时,首先加载根目录下lib目录下的jar包,然后再去加载web-info目录下lib目录下的jar,当在前一个lib目录下加载过了这个jar包了,在后一个lib目录就不再加载了。

            错误信息:“validateJarFile(E:\hnzks\zkyzt_zhjg\tomcat7\webapps\kmcs\WEB-INF\lib\servlet-api-2.5.jar) - jar not loaded. See Servlet Spec 2.3, section 9.7.2. Offending class: javax/servlet/Servlet.class”

            解决方案:删除后个lib目录下面的未加载的jar即可,不删除也没有影响,不过要养成良好的习惯,对我们是有好处的。


      3、第三个错误:当第一次看到这个错误的时候,我就去网上找解决方案,都是说加log4j.jar,增加错误日志输出,我并不排除那种方案可行,但是tomcat对于这种错误也会的提示,Error listenerStart, 这个错误出现的前后两段都是排除错误的关键。主要是前一段,这个错误的信息是我们的java程序运行在了java6上面,但java6并不支持WebSocket1.0。如果想支持这个就去将程序运行在java7上。其实这里的Java6和Java7.就是对应我们的jdk版本,jdk1.6,jdk.1.7.下载个jdk1.7安装下,重新配置Java环境变量问题解决。

第一段:2015-5-18 10:07:32 org.apache.tomcat.websocket.server.WsSci onStartup
信息: JSR 356 WebSocket (Java WebSocket 1.0) support is not available when running on Java 6. To suppress this message, run Tomcat on Java 7, remove the WebSocket JARs from $CATALINA_HOME/lib or add the WebSocketJARs to the tomcat.util.scan.DefaultJarScanner.jarsToSkip property in $CATALINA_BASE/conf/catalina.properties. Note that the deprecated Tomcat 7 WebSocket API will be available. 


第二段:2015-5-18 10:07:32 org.apache.catalina.core.StandardContext startInternal
严重: Error listenerStart


第三段: 2015-5-18 10:07:32 org.apache.catalina.core.StandardContext startInternal
严重: Context [/kmcs] startup failed due to previous errors


     解决方案:见问题描述。

Logo

瓜分20万奖金 获得内推名额 丰厚实物奖励 易参与易上手

更多推荐