以最终客户的角度来看,.jar文件就是一种封装,他们不需要知道.jar文件中有多少个.class文件,每个文件中的功能与作用,同样可以得到他们希望的结果。除jar以外对于J2EE来说还有war和ear。区别见下表:
[img]
[/img]
经常在我们Java Web项目中看到jar/war/ear这几种文件类型,它们之间有何不同之处呢?我查了一些资料归纳整理如下:
jar/war /ear三种文件,在文件结构上,三者并没有什么不同,它们都采用zip或jar档案文件压缩格式。但是它们的使用目的有所区别:
Jar文件(扩展名为. Jar)包含Java类的普通库、资源(resources)、辅助文件 (auxiliary files)等
War文件(扩展名为.War)包含全部Web应用程序。在这种情形下,一个Web应用程序被定义为单独的 一组文件、类和资源,用户可以对jar文件进行封装,并把它作为小型服务程序(servlet)来访问。
Ear文件(扩展名为.Ear)包含全部企业应用程序。在这种情形下,一个企业应用程序被定义为多个jar 文件、资源、类和Web应用程序的集合。
每一种文件(.jar, .war, .ear)只能分别由应用服务器(application servers)、小型服务程序容器(servlet containers)、EJB容器(EJB containers)等进行处理。
JAR WAR EAR
英文 Java Archive file ; Web Archive file Enterprise Archive file
jar:包含内容 class、properties文件,是文件封装的最小单元; war:Servlet、JSP页面、JSP标记库、JAR库文件、HTML/XML文档和其他公用资源文件,如图片、音频文件等;ear:除了包含 JAR、WAR以外,还包括EJB组件
部署文件 application-client.xml web.xml application.xml
级别 小 中 大
jar:封装类 war:封装web站点 ear:可以封装ejb
JAR: Software developers generally use .jar files to distribute Java applications or libraries, in the form. of classes and associated metadata and resources (text, images, etc.) JAR files build on the ZIP file format.
WAR: In computing, a WAR file (which stands for "web application archive" ) is a JAR file used to distribute a collection of JavaServer Pages, servlets, Java classes, XML files, tag libraries and static Web pages (HTML and related files) that together constitute a Web application.
EAR: An Enterprise ARchive, or EAR, is a file format used by Java EE for packaging one or more modules into a single archive so that the deployment of the various modules onto an application server happens simultaneously and coherently. It also contains XML files called deployment descriptors which describe how to deploy the modules. Maven or Ant can be used to build EAR files.
RAR: A Resource Adapter is an archive file format defined in the J2EE Connector Architecture (JCA) specification. A Resource Adapter aRchive (RAR) file is the valid format for deployment of resource adapters on application servers. J2EE RAR files may also be called connectors.
其他概念:
EJB: Enterprise JavaBeans (EJB) is a managed, server-side component architecture for modular construction of enterprise applications. The EJB specification is one of several Java APIs in the Java EE. EJB is a server-side model that encapsulates the business logic of an application.
JavaBean: JavaBeans are reusable software components for Java that can be manipulated visually in a builder tool. Practically, they are classes written in the Java programming language conforming to a particular convention. They are used to encapsulate many objects into a single object (the bean), so that they can be passed around as a single bean object instead of as multiple individual objects. A JavaBean is a Java Object that is serializable, has a nullary constructor, and allows access to properties using getter and setter methods.
Metadata: Metadata is a means to describe the data files.It provides information about a certain item's content, such as: means of creation, purpose of the data, time and date of creation, creator or author of data, placement on a network (electronic form) where the data was created, what standards used (ISO9000), etc.

- 大小: 14.6 KB
分享到:
相关推荐
org.apache.tools.ant.taskdefs.Ear org.apache.tools.ant.taskdefs.Get org.apache.tools.ant.taskdefs.Jar org.apache.tools.ant.taskdefs.Tar org.apache.tools.ant.taskdefs.War org.apache.tools.ant....
war包_jar包_ear包_及打包方法
本篇文章将详细讲解`jar`、`war`包的结构,反编译的概念,以及如何使用反编译工具来获取源码。 首先,`jar`(Java Archive)文件是Java平台上的标准归档格式,它将多个文件(包括`.class`文件、资源文件等)打包在...
通过使用Tomcat,开发者可以轻松地部署和管理Java Web应用程序,包括WAR文件和EAR文件。 在HTML5中,WebSocket协议是一种双向通信协议,允许服务器和客户端进行实时、低延迟的数据交换,极大地提高了Web应用的交互...
4. **打包任务**:创建JAR、WAR或EAR文件,以及生成文档,如Javadoc。 5. **测试任务**:集成JUnit或其他测试框架,自动运行测试并生成测试报告。 为了使用AntTasks.jar中的任务,开发者需要将该JAR文件添加到Ant的...
6. **持续集成与部署**:在生产环境中,这些Java应用程序通常会打包成可执行的`WAR`或`EAR`文件,部署到应用服务器,如WebLogic。通过持续集成工具(如Jenkins)进行自动化构建和测试,确保每次代码更改都能顺利集成...
在 Java 体系结构中,Ear、Jar、War 文件都是压缩文件格式,它们的主要区别在于它们的使用目的和应用场景。下面将对这三种文件进行详细的解释和比较。 Jar 文件 Jar 文件(扩展名为 .Jar)是 Java 类的普通库、...
1. **部署应用**:可以将WAR、EAR或JAR文件部署到WebLogic Server上,无需手动操作。 2. **停止/启动服务器**:能够远程控制WebLogic Server的启动和停止,确保服务在需要时可用。 3. **管理域**:创建、配置和删除...
解决myeclipse10.6不能正常导出ear或war包问题,导出时出现security alert:integrity check error 内附解决方法和jar包com.genuitec.eclipse.export.wizard_9.0.0.me201203160414.jar 关掉myeclipse10.6,替换文件,...
2. 部署方式:了解和掌握JBoss AS的部署流程,可能需要调整war或ear包的打包方式。 3. 依赖管理:确认所有依赖项在JBoss AS环境中都能找到,避免类加载冲突。 4. 性能调优:根据JBoss AS的特点进行性能调优,例如...
在WebLogic Server上部署应用程序通常涉及以下步骤:配置WebLogic服务器环境,将应用打包成WAR或EAR文件,配置数据源(如使用ojdbc7.jar连接Oracle数据库),设置服务器环境变量,最后在WebLogic管理控制台中部署...
通常,JAR文件会被Java虚拟机(JVM)用来执行包含在其中的类,或者作为部署单元,比如Web应用的WAR文件和EJB的EAR文件。 压缩包内的文件名"asm-attrs-1.4.3.jar"应该是ASM库的"attrs"模块的实现,包含了处理Java类...
EAR(Enterprise Application Archive)与WAR(Web Application Archive)文件是Java企业级应用中常用的两种部署包格式。本文将详细介绍这两种文件的制作方法,并提供实际操作步骤。 #### 一、EAR 和 WAR 文件概述 ...
jarsigner 是Java提供的命令行工具,它可以对JAR、WAR或EAR文件进行签名。在这个过程中,APK的每个组件都会被加上一个数字签名,证明了应用的完整性和开发者身份。 3. **优化签名**:签名后,开发者可能需要对APK...
6. **与WAR和EAR文件的区别** - WAR(Web Application Archive)文件是专门用于打包Web应用的JAR格式,包含了Servlet、JSP、CSS、JavaScript等Web资源。 - EAR(Enterprise Application Archive)文件则用于打包...
关于war包_jar包_ear包_及打包方法
在部署时,应用会被打包成`.war`或`.ear`文件,然后部署到应用服务器(如Tomcat、WebLogic、JBoss等),这些服务器也提供了运行J2EE应用所需的`jar`包。 5. **依赖管理**: 在现代的开发环境中,如Maven或Gradle,...
-- 指定打包类型,如jar、war、ear等 --> <classifier>...</classifier> <!-- 区分同一项目的不同构建版本 --> <name>...</name> <!-- 项目名称 --> <url>...</url> <!-- 项目URL --> <!-- 其他元素 --> ...
- **整合依赖**:fatjar的主要任务是整合项目中的所有类文件和外部库,包括JAR、WAR、EAR文件等,确保在运行时所有所需的资源都包含在内。 - **排除重复**:在合并多个库时,可能会出现类名冲突的情况,fatjar能够...
在 Ant build 文件中,我们将公用的 JAR 包都放到 EAR 文件下,而不是分别在 EJB JAR 包和 WAR 包中,以减少 JAR 包的冗余。 通过上面的步骤,我们可以使用 Ant 工具将 EJB 项目打包成 EAR 文件,並 deploy 到 ...