博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【项目部署】部署项目以war包部署和解开以目录部署的区别
阅读量:6587 次
发布时间:2019-06-24

本文共 1220 字,大约阅读时间需要 4 分钟。

  

  我们都知道最简单的部署web项目的方式是打成war包直接仍在tomcat的webapps目录下,我上个项目也确实是这样做的,可是这给我们后期的维护带来了极大的不便,下面就简单研究一下以war包部署和解开部署的区别。

1.以war包部署:(适用于全量部署)

  利用eclipse或者maven等工具可以直接生成war包,如下:

 

现在我们直接将它丢到tomcat的webapps目录下:(如果tomcat是启动状态也可以直接扔在下面,tomcat会自动扫描war包并解压)

 

查看解压后的目录结构:(相当于eclipse的webapp,我们写的代码编译之后放在WEB-INF的classes目录下,引用的第三方jar包在WEB-INF的lib目录下)

 

 到此部署成功,可以直接访问。

 

 

现在假如我们的项目因为需求变化需要重新补丁,但是就是因为修改了几个类我们需要重新部署,方法:

    删除war包之后重新打包部署-----此方法肯定成功,但是效率极低。每次都得传输大量的jar包,只第三方的jar包就200M。

    而且我们删掉Exam.war之后tomcat会自动去掉Exam目录,也就是清除掉此项目。也就是此项目依赖于war包,给维护带来极大不便。

 

 

2.以目录的形式部署(尽量使用这种)

  • 在上面打好的war之后,将war包解压:

 

  •  将我们写的代码编译之后的class文件进行打包,打成jar包放到lib目录下。

(1)打包:  也就是将编译之后的class文件打包

liqiang@root MINGW64 ~/Desktop/新建文件夹 (2)/WEB-INF/classes$ pwd/c/Users/liqiang/Desktop/新建文件夹 (2)/WEB-INF/classesliqiang@root MINGW64 ~/Desktop/新建文件夹 (2)/WEB-INF/classes$ jar cvf exam-1.0.jar ./cn

 

 

(2)删掉原来class文件将上面的jar放到WEB-INF\lib目录下

 

  • 将上面的文件夹放到webapps目录下启动tomcat即可

注意:此时WEB-INF目录下只有我们的配置文件,我们的class文件在上面打成jar包放到WEB\lib目录下。

 

  我认为这种方式部署的好处是可以增量部署,我们如果在后期修改bug之后代码变了我们只需要将我们编译之后的代码重新打成jar包传到服务器(只用传一个jar包),如果我们是增加功能我们可以生成新的jar包放到WEB\lib目录,如果增加了新的配置文件我们可以放到WEB-INF\classes目录下,当然配置文件也可以打在jar包中。

 

  也就是我们在项目部署的时候尽量使用目录部署,便于后期修复bug与增加功能,可以实现增量部署。

  

  mysql安装的时候也尽量使用集成安装的方式,便于控制,mysql集成安装参考:  

 

转载地址:http://kshno.baihongyu.com/

你可能感兴趣的文章
mysql快速部署主从复制
查看>>
Linux目录树
查看>>
linux系统管理常用命令--top
查看>>
Dokcer基础
查看>>
linux两台服务器之间文件/文件夹拷贝
查看>>
django+echarts+ajax异步+显示优化--基本例子
查看>>
通过web的方式动态查看tomcat的catalina.out的日志(web.py)
查看>>
ip首部TCP首部
查看>>
mysqlbinlog配置
查看>>
Linux下vmware安装部署
查看>>
Silverlight 游戏开发小技巧:昼夜交替动画
查看>>
The best GraphQL Loader for Webpack
查看>>
CuteEditor Html中显示Word格式粘贴的文章[CuteEditor WordToHtml]
查看>>
关于IOS屏幕的旋转问题
查看>>
病毒行为分析初探(二)
查看>>
perl,shell中如何打印出处理sql语句变量的单引号
查看>>
Windows Server 林功能级别详解
查看>>
OpenStack云第三天
查看>>
RAID5中的“左、右循环”与“同步、异步”(2)
查看>>
ORACLE RAC运行在300G内存以上需要考虑的东西
查看>>