简体   繁体   中英

how to create ear file, and include war and jar files inside that

I am trying to create an EAR file from the command prompt. I have used

jar -cvf myServletWAR.ear . 

But my question is, how can I get this EAR file to have WAR files and JAR files inside it?

Do I need to create the war file separately and include in the ear file?

I can't use the ANT file for this, as there are few restrictions on this project.

One of my EAR files has structure as follows:

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

This archive is being deployed onto WebLogic 10.3.

Remeber .ear is just a ZIP file, so you can always create it this way, although it seems messy.

check if jar cmd is working if so, create the jar of your class files and descriptors etc.

After that jar -cvf <<earname>> <<files want to be in the ear >>

Could you try this :

jar -xvf myServletWAR.ear

You could also refer to :

How to add a WAR file into an existent EAR file? and how to I have two .war files within one .ear file?

You would have to add these EAR file references in the application.xml of the ear file.

If you have generated a client and EJB together, they are automatically packaged into an enterprise archive file (.ear) and you do not need to do this. Otherwise:

  • Package the EJB's .jar file into an .ear for your application. To do this use a jar command similar to the following:
 jar -cvf myApplication .ear myService.jar

If you have a client .war file you can add that to the .ear file in the same way.

  • Create a deployment descriptor application.xml either using your
    application server's tools or by copying and editing a sample, as
    follows:

  • Locate a sample .ear, which is in examples directory in

mapdemo/mapdemo/repos/myService.deploy/JMapServ-WL.ear
  • Extract the descriptor application.xml from the .ear file, using the following jar command:

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

  • Make a copy of the application.xml descriptor and edit it, replacing JMapServ with the name of your .jar file. You can also add the name of your .war file if you added that to the .ear file.

  • Put the descriptor in the meta-inf subdirectory of the directory containing your .ear file.

  • Package the descriptor into your .ear file using a jar command similar to:

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

.jar file into an .ear

jar -cvf myApplication.ear myService.jar

.war file you can add that to the .ear file in the same way.

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

If you want to create an ear from the command line, following are the options that you can try.

Option 1. Using an ant build and use the ear task. Configure this ear task as stated in stackoverflow question on ant ear task usage

Note: Maven based build is preferred over ant these days.

Option 2. If you can use maven, configure your modules and use maven ear plugin to generate an ear. The below command will be able to generate the ear.

mvn clean package

Refer to the maven question regarding a Java EE project for more information on configuring war, jars for an ear .

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM