什么是war,jar包
经常听开发的人员在讨论war,jar,car,我听的就糊涂,跟本不知道是在讲神马?
最近我总结了下:
jar包就是别人已经写好的一些类,然后将这些类进行打包,你可以将这些jar包引入你的项目中,
然后就可以直接使用这些jar包中的类和属性了,这些jar包一般都会放在lib目录下的.到手机里
打开就行
jar:
java archive;
包含:class、properties文件,是文件封装的最小单元;
部署文件:application-client.xml;
级别:小;
war:
Web Archive;
包含:Servlet、JSP页面、JSP标记库、JAR库文件、HTML/XML文档和其他公用资源文件,
如图片、音频文件等;
部署文件: web.xml;
级别:中;
war包生成:
a.用eclipse等IDE,可以再项目上右击选择“导出”,即可;
b.手工制作:执行jar -cvf 将要生成的包名.war 要压缩的目录名
war包其实就是经过zip压缩的文件,用winrar压缩成zip格式,修改扩展名为war即可。
.ear :
Enterprise Archive;
包含:除了包含JAR、WAR以外,还包括EJB组件;
部署文件:application.xml;
级别:大;
以最终客户的角度来看,.jar文件就是一种封装,他们不需要知道.jar文件中有多少个.class文件,每个文件中的功能与作用,同样可以得到他们希望的结果。
war包:是做好一个web应用后,通常是网站,打成包部署到容器中。
jar包:通常是开发时要引用通用类,打成包便于存放管理。
ear包:企业级应用,通常是EJB打成ear包。
所有的包都是用jar打的,只不过目标文件的扩展名不一样
jar--封装类
war--封装web站点
ear--封装ejb
一个web组件开发者执行以下的任务来传递一个包含web组件的WAR文件:
| 编写并编译servlet源代码
| 编写jsp、html文件
| 指定web的开发描述符
| 邦定.class,.jsp,.html和部署描述符到一个WAR文件。
war包可以放在webapps或者work目录下都可以,随着tomcat的启动,它可以自动被解压.
或者通过tomcat的管理页面,也可以发布war包,发布实际上就是把war包复制到webapps目录下.
-
命令行方式
前提是你机器中安装了JDK,并且在环境变量path中添加了jdk的bin目录进去。
可以通过jar命令来打包war和jar包,如下jar命令使用规范
下面是使用示例
这个示例是打包class目录下的com目录,如果你想打包class目录下的所有内容可以使用- jar -cvf test.jar *
jar -cvf test.jar *
打war包也是一样的用法只是你打包的目录应该是web应用的根目录。
war包用winrar打开目录是这样的
大家可以根据自己的需求配置使用jar命令的参数。 -
使用工具JBuilder对web项目可以自动生成war包
在web模块上单击右键选择properties
如下图进行设置,这样在rebuild项目和web模块的时候都会在项目根目录下产生一个war文件。
-
使用工具eclipse导出war包
在项目上点击鼠标右键
如下图
选择war点击下一步
选择要导出的项目和war的存放路径,点击完成。
导出jar文件方法类似,请大家自己研究一下。是我自己懒了!