在学习maven的过程中接触到了jar包和war包。之前在写小项目的时候真的遇到过war包,当时为了找到jar包,把war包
的后缀名改成了.rar的压缩文件,在里面提取出来jar包来用。其实jar包和war包都可以看成压缩文件,用解压软件都可以
打开,jar包和war包所存在的原因是,为了项目的部署和发布,通常把项目打包,通常在打包部署的时候,会在里面加
上部署的相关信息。这个打包实际上就是把代码和依赖的东西压缩在一起,变成后缀名为.jar和.war的文件,就是我们说
的jar包和war包。但是这个“压缩包”可以被编译器直接使用,把war包放在tomcat目录的webapp下,tomcat服务器在启
动的时候可以直接使用这个war包。通常tomcat的做法是解压,编译里面的代码,所以当文件很多的时候,tomcat的启
动会很慢。
说了这么多,还是没有讲jar包和war包的区别。jar包是java打的包,war包可以理解为javaweb打的包,这样会比较好
记。jar包中只是用java来写的项目打包来的,里面只有编译后的class和一些部署文件。而war包里面的东西就全了,包
括写的代码编译成的class文件,依赖的包,配置文件,所有的网站页面,包括html,jsp等等。一个war包可以理解为师
一个web项目,里面是项目的所有东西。
什么时候使用jar包或war包?当你的项目在没有完全完成的时候,不适合使用war文件,因为你的类会由于调试之类的
经常改,这样来回删除、创建war文件很不方便,来回修改,来回打包,最好是你的项目已经完成了,不做修改的时
候,那就打个war包吧,这
个时候一个war文件就相当于一个web应用程序;而jar文件就是把类和一些相关的资源封装到一个包中,便于程序中引用。