碰到問(wèn)題過(guò)程如下
問(wèn)題1:
tomcat啟動(dòng)良好,localhost:8080訪問(wèn)成功
但是訪問(wèn)扔到tomcat上的項(xiàng)目怎樣都是404
解決思路如下:
1. 查找catalina.out,查看啟動(dòng)log
發(fā)現(xiàn)項(xiàng)目有被加載
啟動(dòng)./startup.sh時(shí)發(fā)現(xiàn)調(diào)用的jre為1.6!
Using CATALINA_BASE: /usr/local/tomcat7Using CATALINA_HOME: /usr/local/tomcat7Using CATALINA_TMPDIR: /usr/local/tomcat7/tempUsing JRE_HOME: /usr/java/jdk1.6.0_25/jreUsing CLASSPATH: /usr/local/tomcat7/bin/bootstrap.jar:/usr/local/tomcat7/bin/tomcat-juli.jar
項(xiàng)目需要的jdk是1.8并且linux上也已經(jīng)安裝良好
命令java -version顯示如下
java version "1.8.0_111"Java(TM) SE Runtime Environment (build 1.8.0_111-b14)Java HotSpot(TM) 64-Bit Server VM (build 25.111-b14, mixed mode)
而此時(shí)系統(tǒng)設(shè)置的環(huán)境變量 /etc/PRofile 也已經(jīng)華麗的設(shè)置了
export JRE_HOME=/usr/java/jdk1.8.0_111/jre
則解決方法是:
tomcat啟動(dòng)調(diào)用的./startup.sh打開(kāi)細(xì)看會(huì)發(fā)現(xiàn)它其實(shí)調(diào)用的是catalina.sh
那么直接粗暴的在catalina.sh第一行粗暴的添加命令
export JRE_HOME=/usr/java/jdk1.8.0_111/jre
保存退出即可
問(wèn)題2:
依然是將war包扔到webapps下啟動(dòng)tomcat
catalina.out信息如下:
INFO: Deploying web application archive /usr/local/tomcat7/webapps/Map.warFeb 08, 2017 1:44:39 AM org.apache.catalina.startup.TldConfig executeINFO: At least one JAR was scanned for TLDs yet contained no TLDs. Enable debug logging for this logger for a complete list of JARs that were scanned but no TLDs were found in them. Skipping unneeded JARs during scanning can improve startup time and jsp compilation time.Feb 08, 2017 1:44:40 AM org.apache.catalina.core.StandardContext startInternalSEVERE: One or more listeners failed to start. Full details will be found in the appropriate container log fileFeb 08, 2017 1:44:40 AM org.apache.catalina.core.StandardContext startInternalSEVERE: Context [/Map] startup failed due to previous errorsFeb 08, 2017 1:44:40 AM org.apache.catalina.startup.HostConfig deployWAR
加載了倒霉蛋war包但是錯(cuò)誤
則轉(zhuǎn)戰(zhàn)項(xiàng)目本身的log,在map_info.log中發(fā)現(xiàn)報(bào)錯(cuò),無(wú)法找到配置文件
將配置文件拷貝到相應(yīng)的路徑下面,DONE
問(wèn)題3:
報(bào)錯(cuò)信息如下(catalina.out)
Feb 09, 2017 12:23:31 AM org.apache.catalina.loader.WebappClassLoaderBase validateJarFileINFO: validateJarFile(/usr/local/tomcat7/webapps/*****/WEB-INF/lib/el-api-2.2.jar) - jar not loaded. See Servlet Spec 3.0, section 10.7.2. Offending class: javax/el/Expression.class
解決方案:
應(yīng)該是el-api-2.2.jar與tomcat7中的lib里jar包沖突,刪掉項(xiàng)目中的jar包(/WEB-INF/lib),然后重啟tomcat
以上。
新聞熱點(diǎn)
疑難解答
圖片精選