如何创建ear文件,并在其中包含war和jar文件

我试图从命令提示符创建一个EAR文件。 我用过

jar -cvf myServletWAR.ear . 

但我的问题是,如何让这个EAR文件中包含WAR文件和JAR文件?

我是否需要单独创建war文件并包含在ear文件中?

我不能使用ANT文件,因为这个项目的限制很少。

我的一个EAR文件的结构如下:

 app.ear - APP-INF - lib // libraries (.jar) here - META-INF - MANIFEST.MF - weblogic-application.xml - module1.war - customlib.jar 

此存档正在部署到WebLogic 10.3上。

记住.ear只是一个ZIP文件,所以你总是可以用这种方式创建它,虽然看起来很乱。

检查jar cmd是否正常工作,如果是,请创建类文件和描述符的jar等。

之后那个jar -cvf <> <>

你能试一试吗:

 jar -xvf myServletWAR.ear 

你也可以参考:

如何将WAR文件添加到现有的EAR文件中? 以及如何在一个.ear文件中包含两个.war文件?

您必须在ear文件的application.xml中添加这些EAR文件引用。

如果您已经一起生成了客户端和EJB,它们会自动打包到企业归档文件(.ear)中,您无需执行此操作。 除此以外:

  • 将EJB的.jar文件打包到应用程序的.ear中。 为此,请使用类似于以下内容的jar命令:
 jar -cvf myApplication .ear myService.jar 

如果您有客户端.war文件,则可以以相同的方式将其添加到.ear文件中。

  • 使用您的。创建部署描述符application.xml
    应用程序服务器的工具或通过复制和编辑样本,如
    如下:

  • 找到示例.ear,它位于示例目录中

 mapdemo/mapdemo/repos/myService.deploy/JMapServ-WL.ear 
  • 使用以下jar命令从.ear文件中提取描述符application.xml:

jar -xvf JMapServ-WL.ear META-INF / application.xml

  • 制作application.xml描述符的副本并对其进行编辑,将JMapServ替换为.jar文件的名称。 如果将.war文件添加到.ear文件,也可以添加.war文件的名称。

  • 将描述符放在包含.ear文件的目录的meta-inf子目录中。

  • 使用类似于以下的jar命令将描述符打包到.ear文件中:

 jar -uvf myService.ear META-INF/application.xml 

.jar文件到.ear

jar -cvf myApplication .ear myService.jar

.war文件,您可以以相同的方式将其添加到.ear文件中。

Reffer http://supportline.microfocus.com/Documentation/books/sx51/thdpoy10.htm

如果要从命令行创建耳朵,可以尝试以下选项。

选项1.使用ant构建并使用ear任务。 按照关于ant ear任务使用的stackoverflow问题中的说明配置此ear任务

注意:基于Maven的构建目前比ant更受欢迎。

选项2.如果您可以使用maven,请配置您的模块并使用maven ear插件生成耳朵。 以下命令将能够生成耳朵。

 mvn clean package 

有关配置war,jars for ear的更多信息,请参阅有关Java EE项目的maven问题。