tomcat是个很常用的web容器.方便配置操作简单.以下将会从几个方面去梳理,首先我们在刚接触工作的时候.迫切的需要掌握发版这项技能.发版为了方便文件传输,需要将文件打包.一般根据文件不同,会打成jar,war,tar,tar.gz等(我觉得打包只是为了方便传输,下面会说不同包的区别)
说下我的环境,jdk8,tomcat7,centOs7,jdk如何配置这里就不介绍了.
1.首先说下,idea打war包
1.点击File,选择Project Structure,找到Artifacts点击,然后选择 加号,加入一个war包,选择这个idea会自动打一个war包
2.点击创建manifest文件时会弹出一个选择文件的框,直接选择META-INF文件就好了,在当前项目的webapp文件下
3.这个时候war包就配置完了,然后点击Build构建包.点击后加载
页面底部出现Build提示,当build完成后,去第二步设置的输出路径就可以找到war文件了
文件夹中的war包
2.部署tomcat
1.先下载tomcat,然后直接解压到linux中.就完成了,下图是我解压的tomcat7
2.进入tomcat7文件中的webapps下.将除ROOT外的所有文件删掉.都没什么用
这样就比较清晰了.至于为什么留ROOT,下面有解释
3.开始上传,进入tomcat的webapps,将打好的war包.上传linux ,软件有很多,我用的是fileZilla,输入ip,用户名,密码直接连接
4.传输之后如果忘了自己具体放在那里,可以使用 find -name *.war 来查找tomcat目录下所有的以.war结尾的文件
5.cd到上面查出的目录,将pm_trunck_web.war用mv命令移动到 webapps目录下.
6.这个时候.tomcat启动后会自动识别war包.将它解压,产生一个文件.
7.然后直接启动tomcat. 执行tomcat下bin目录中的startup.sh ; ./bin/startup.sh就可以了,要注意当前目录,目录不同,执行命令文件位置也不同
如果需要看日志,一般执行 ./bin/startup.sh; tail -f ../log/catalina.out;
9.启动时一般有的tomcat会报错.没有这两个jar包. json.jar和icu4j.jar可以忽略
出现这个就启动成功了,回去看webapps下发现,多了一个已经解压好的包
10,打开浏览器直接输入 ip:port/项目名 访问;到此就结束了;
2.解释下ROOT目录和webapps目录的区别.
将项目放到root目录下,不需要输入项目名就可以进行防问,如我们平常看到的大猫.一般情况下.root文件下都是大猫的文件
不输入项目名就可以访问项目,还有一个方法.
删除原 webapps/ROOT 目录下的所有文件,修改文件“conf/server.xml”,在Host节点下增加如下Context的内容配置。
而文件放到webapps下则需要输入项目名访问.这个办法也是我们常用的.
3.解释下tar,jar,war,tar.gz包的区别.
jar:即Java Archive,Java的包,Java编译好之后生成class文件,但如果直接发布这些class文件的话会很不方便,所以就把许多的class文件打包成一个jar,jar中除了class文件还可以包括一些资源和配置文件,通常一个jar包就是一个java程序或者一个java库。
war:Web application Archive,与jar基本相同,但它通常表示这是一个Java的Web应用程序的包,tomcat这种Servlet容器会认出war包并自动部署
tar:tar是*nix下的打包工具,生成的包通常也用tar作为扩展名,其实tar只是负责打包,不一定有压缩,事实上可以压缩,也可以不压缩,通常你看到xxxx.tar.gz,就表示这个tar包是压缩的,并且使用的压缩算法是GNU ZIP,而xxxx.tar.bz2就表示这个包使用了
bzip2
算法进行压缩,当然这样的命名只是一种惯例,并非强制。简单地说,tar就仅是打包。