最近做的项目,用的是jdk7和tomcat6或者tomcat7,在配置好jdk环境,验证jdk安装成功后,在自己的电脑上点击tomcat里面的bin文件夹下的startup.bat,很顺利,而且可以进入欢迎页,但是一旦在其他服务器上去配置tomcat,而且是一模一样的环境,点击startup.bat出现闪退(或者运行完闪退),遇到这个问题,当然第一时间去csdn啦,好吧,都说更改8080端口,可是还是闪退,如此郁闷的心情伴随着不停 的找解决方法,最后还是没有找到。
经过一晚上的琢磨,本人亲自研读了tomcat的confg文件夹下的server.xml文件,同时每次闪退的时候,去查log日志文件,终于发现了问题。先把server.xml文件贴出来,大家应该也是非常熟悉这个配置文件,一些端口,项目,都是在这里进行配置就行了。
<Server port="8005" shutdown="SHUTDOWN">
<!--APR library loader. Documentation at /docs/apr.html -->
<Listener SSLEngine="on" className="org.apache.catalina.core.AprLifecycleListener"/>
<!--Initialize Jasper prior to webapps are loaded. Documentation at /docs/jasper-howto.html -->
<Listener className="org.apache.catalina.core.JasperListener"/>
<!-- Prevent memory leaks due to use of particular java/javax APIs-->
<Listener className="org.apache.catalina.core.JreMemoryLeakPreventionListener"/>
<!-- JMX Support for the Tomcat server. Documentation at /docs/non-existent.html -->
<Listener className="org.apache.catalina.mbeans.ServerLifecycleListener"/>
<Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener"/>
<GlobalNamingResources>
<Resource auth="Container" description="User database that can be updated and saved" factory="org.apache.catalina.users.MemoryUserDatabaseFactory" name="UserDatabase" pathname="conf/tomcat-users.xml" type="org.apache.catalina.UserDatabase"/>
</GlobalNamingResources>
<Service name="Catalina">
<Connector URIEncoding="utf-8" connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="8443"/>
<Connector port="8009" protocol="AJP/1.3" redirectPort="8443"/>
<Engine defaultHost="localhost" name="Catalina">
<Realm className="org.apache.catalina.realm.UserDatabaseRealm" resourceName="UserDatabase"/>
<Host appBase="webapps" autoDeploy="true" name="localhost" unpackWARs="true" xmlNamespaceAware="false" xmlValidation="false">
<Context docBase="CouldPreparation" path="/CouldPreparation" reloadable="true" source="org.eclipse.jst.jee.server:CouldPreparation"/></Host>
</Engine>
</Service>
</Server>
为了便于查看,我把里面没用的注释全部去掉了,一般我们常规思维动刀这句话。
<Connector URIEncoding="utf-8" connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="8443"/>
这是启动tomcat的端口信息,
默认是8080,一般如果电脑中有其他程序占用的话,我们就改这个,这个端口号被占用,那么肯定也是启动不了服务的

这样一来,我们改掉了两个端口,然后重新双击startup.bat,这下应该是没有问题啦。启动tomcat首页去看看~~~~~
ps,如有问题,望批评指出。