1.上传windows环境开发的应用程序。
如maven的web模块中自动打好了war包,只需将war包上传至linux系统中。
mv demo.war /home/hqh/tomcat6/webapps? 将war包剪切到webapps目录
如果没有war包,则可将webapps目录下的文件使用zip格式打包上传,在linux系统中使用unzip命令解压。
文件上传到linux中,默认在宿主目录下,解压时直接将其解压到tomcat的webapps目录中。
cd /home/hqh/tomcat6
mkdir demo (创建好解压后文件存放的目录,取决于解压后的文件结构)
unzip /home/hqh/demo.zip ?/home/hqh/tomcat6/webapps
包冲突问题的解决
tomcat目录下新建endorsed目录,加入jaxb.jar
?
2.建立link文件方便控制台信息的输出
ln -s /home/hqh/tomcat6/logs/catalina.out? /home/hqh/tomcat6/bin/console.out
tail -f console.out 通过对/logs/catalina.out建立链接,直接通过链接来查看控制台输出信息
?
3.启动tomcat
./startup.sh 或 sh startup.sh
启动过程中出现了一个异常:
Caused by: java.lang.LinkageError: JAXB 2.1 API is being loaded from the bootstrap classloader,
but this RI (from jar:file:/home/hqh/tomcat6/webapps/student-web/WEB-INF/lib/jaxb-impl-2.2.5.jar!/com/sun/xml/bind/v2/model/impl/ModelBuilder.class) needs 2.2 API.
Use the endorsed directory mechanism to place jaxb-api.jar in the bootstrap classloader. (See http://java.sun.com/j2se/1.6.0/docs/guide/standards/)
异常信息主要提示:类加载器已经加载了JAXB2.1,但是项目引入的jaxb-impl-2.2.5需要JAXB2.2的jar!
解决方案:在tomcat目录下新建endorsed目录,将项目中引入的JAXB2.2的api包放入其中,让tomcat去加载endorsed目录中JAXB2.2的包,这样就能解决了!
cd /home/hqh/tomcat6? 进入tomcat目录?
mkdir endorsed???????????? 创建endorsed目录
mv tomcat6/webapps/demo/lib/jaxb-api-2.2.4.jar? tomcat6/endorsed
将需要加载的包放到endorsed目录中
./startup.sh? 启动tomcat
tail -f console.out??