JAR、WAR、EAR的使用和区别
Jar、war、EAR、在文件结构上,三者并没有什么不同,它们都采用zip或jar档案文件压缩格式。但是它们的使用目的有所区别:
Jar文件(扩展名为. Jar,Java Application Archive)包含Java类的普通库、资源(resources)、辅助文件(auxiliary files)等
War文件(扩展名为.War,Web Application Archive)包含全部Web应用程序。在这种情形下,一个Web应用程序被定义为单独的一组文件、类和资源,用户可以对jar文件进行封装,并把它作为小型服务程序(servlet)来访问。
Ear文件(扩展名为.Ear,Enterprise Application Archive)包含全部企业应用程序。在这种情形下,一个企业应用程序被定义为多个jar文件、资源、类和Web应用程序的集合。
每一种文件(.jar, .war, .ear)只能由应用服务器(application servers)、小型服务程序容器(servlet containers)、EJB容器(EJB containers)等进行处理。
EAR文件包括整个项目,内含多个ejb module(jar文件)和web module(war文件)
EAR文件的生成可以使用winrar zip压缩方式或者jar命令。
步骤:
先打包成war和jar,并写好application.xml,放到META-INF目录下,然后 jar cf your_application.ear your_war.war your_jar.jar META-INF\application.xml,
打包,我这假设都在当前目录下 可以用 jar xf your_application.ear解压
application.xml中描述你的ear中包括的war和jar
weblogic自带的petstore 的application.xml例子:
<?xml version=”1.0〃 encoding=”ISO-8859-1〃?>
<!DOCTYPE application PUBLIC ‘-//Sun Microsystems, Inc.//DTD J2EE Application 1.2//EN’ ‘http://java.sun.com/j2ee/dtds/application_1_2.dtd’>
<application>
<display-name>estore</display-name>
<description>Application description</description>
<module>
<ejb>customerEjb.jar</ejb>
</module>
<module>
<ejb>mailerEjb.jar</ejb>
</module>
<module>
<web>
<web-uri>petstore.war</web-uri>
<context-root>estore</context-root>
</web>
</module>
<module>
<ejb>petstoreEjb.jar</ejb>
</module>
<module>
<ejb>signonEjb.jar</ejb>
</module>
<module>
<ejb>personalizationEjb.jar</ejb>
</module>
<module>
<ejb>inventoryEjb.jar</ejb>
</module>
<module>
<ejb>shoppingcartEjb.jar</ejb>
</module>
<security-role>
<description>the gold customer role</description>
<role-name>gold_customer</role-name>
</security-role>
<security-role>
<description>the customer role</description>
<role-name>customer</role-name>
</security-role>
<security-role>
<role-name>administrator</role-name>
</security-role>
</application>
WAR的使用:
如果想生成war文件:可以使用如下命令:jar -cvf web1.war *
如果想查看web1.war中都有哪些文件,可以使用命令:jar -tf web1.war
如果想直接解压web1.war文件,可以使用命令:jar -xvf web1.war
另外,也可使用winrar软件选择zip压缩方式,并将压缩文件后缀名改为war即可压缩生成war文件;同样使用winrar软件可以强行打开war 文件,或者强行解压war文件
使用jar命令与winrar软件的区别在于前者在压缩文件的同时会生成MetaINF文件夹,内包含MANIFEST.MF文件。
何时使用war或者jar文件:
当你的项目在没有完全竣工的时候,不适合使用war文件,因为你的类会由于调试之类的经常改,这样来回删除、创建war文件很不爽,最好是你的项目已经完成了,不改了,那么就打个war包吧,这个时候一个war文件就相当于一个web应用程序鸟;而jar文件就是把类和一些相关的资源封装到一个包中,便于程序中引用。
分享到:
相关推荐
在 Java 体系结构中,Ear、Jar、War 文件都是压缩文件格式,它们的主要区别在于它们的使用目的和应用场景。下面将对这三种文件进行详细的解释和比较。 Jar 文件 Jar 文件(扩展名为 .Jar)是 Java 类的普通库、...
Java中Ear、Jar、War文件之间有何不同
war包_jar包_ear包_及打包方法
在Java开发领域,`jar`和`war`文件是两种常见的打包格式,它们分别用于封装Java应用程序和Web应用程序。当你需要查看或者分析这些已编译的二进制类文件(`.class`)时,反编译工具就派上了用场。本篇文章将详细讲解`...
jar cvf myapp.ear mywebapp.war myejb.jar ``` 2. **使用构建工具(如Ant、Maven)自动化创建EAR文件** - **使用Ant**: - 创建`build.xml`文件,定义任务来打包EAR文件。 - 示例代码: ```xml ...
专门搜索jar,zip,war,ear压缩包里包含的文件
关于war包_jar包_ear包_及打包方法
本文将详细解析基于Java的三种打包格式:JAR、WAR和EAR包的作用与区别。 **JAR (Java Archive) 文件** JAR文件是最基本的打包形式,它主要用于封装Java类库,包括.class文件、资源文件、元数据等。开发者通常会将...
在实际开发中,为了简化管理,我们通常会使用构建工具(如Maven或Gradle)来自动管理这些依赖,它们会根据项目配置自动下载所需的jar包并放入`lib`目录或构建出的war/ear包中。这样可以确保所有必要的依赖都被正确地...
使用构建工具(如Maven的`ear-maven-plugin`或Gradle的`ear`插件)将EJB JAR、Web组件(如有)、库文件和其他资源打包到一个EAR文件中。 **四、部署和运行** 1. **选择应用服务器**: 选择兼容的Java EE应用...
- `EAR(Enterprise Archive)`文件:用于打包整个企业级应用,包括多个WAR和EJB JAR。 7. **JAR冲突**: - 当多个JAR包含相同类时,可能会出现类加载冲突。解决方法包括使用不同的类加载器层次,或者通过排除...
4. **部署应用程序**:将包含DB2连接代码的应用程序打包成WAR或EAR文件,然后部署到WebSphere应用服务器。 5. **配置应用程序**:在应用程序的配置中,指定刚刚创建的数据源,以便应用程序在运行时可以找到并使用它...
2. **EAR**(Enterprise Archive):适用于企业级Java应用,包含多个WAR和EJB JAR文件。 3. **OBR**(OSGi Bundle Repository):在OSGi环境中,JAR作为模块化组件。 六、现代工具与JAR 随着Maven、Gradle等构建...
对于Java开发人员来说,这是一个非常有用的实用程序。 有时您的项目可能依赖于各种库。 但是,提供具有依赖项的桌面应用程序不是一个好主意。 该实用程序有助于将所有... 该实用程序可用于合并JAR,WAR,EAR和ZIP文件。
- **分布式应用**:JAR常用于打包Web应用的WAR(Web Application Archive)或EAR(Enterprise Application Archive)的一部分。 - **插件系统**:许多Java应用支持通过JAR文件作为插件进行扩展。 5. **JAR依赖...
在 Ant build 文件中,我们将公用的 JAR 包都放到 EAR 文件下,而不是分别在 EJB JAR 包和 WAR 包中,以减少 JAR 包的冗余。 通过上面的步骤,我们可以使用 Ant 工具将 EJB 项目打包成 EAR 文件,並 deploy 到 ...
6. **与WAR和EAR文件的区别** - WAR(Web Application Archive)文件是专门用于打包Web应用的JAR格式,包含了Servlet、JSP、CSS、JavaScript等Web资源。 - EAR(Enterprise Application Archive)文件则用于打包...
6. **持续集成与部署**:在生产环境中,这些Java应用程序通常会打包成可执行的`WAR`或`EAR`文件,部署到应用服务器,如WebLogic。通过持续集成工具(如Jenkins)进行自动化构建和测试,确保每次代码更改都能顺利集成...
通过使用Tomcat,开发者可以轻松地部署和管理Java Web应用程序,包括WAR文件和EAR文件。 在HTML5中,WebSocket协议是一种双向通信协议,允许服务器和客户端进行实时、低延迟的数据交换,极大地提高了Web应用的交互...
Java日常处理工具类Part2-JAR,主要关注的是如何使用JAR(Java Archive)文件,这是Java编程语言中的一种归档格式,用于收集多个类文件、相关的元数据和其他资源(如图片、声音或文本文件)到一个单一的文件中。JAR...