Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to include dependencies in WAR file?

I have a Dynamic Web Project in Eclipse which has a dependency to another Java project in my workspace. When running the web project in the build-in Tomcat server, I've added the project dependency to the class path in the run configuration. I would like to create a WAR for deploying the web project on an external server. The dependency Java project is added to the Java Build path in Eclipse, but when I export an WAR-file the library is not included. The Java project is also selected in the Order and Export. How can I create a WAR with where my dependencies are included?

like image 608
dhrm Avatar asked Apr 10 '12 12:04

dhrm


People also ask

Does war file contain all dependencies?

war file have all the needed . jar's to run in a container in a different physical server (but same software i.e. apache tomcat).

Where are dependencies stored in war file?

You will find the libraries under /WEB-INF/lib.

How do you add dependencies?

To add a dependency to your project, specify a dependency configuration such as implementation in the dependencies block of your module's build. gradle file. This declares a dependency on an Android library module named "mylibrary" (this name must match the library name defined with an include: in your settings.


2 Answers

I am using Eclipse Helios Java EE. Right click on the project. On the properties window for that project select "Deployment Assembly" in the tree on the left hand side. Click add and on the window that appears select "Java Build Path Entries". Select all the libraries that you wish to be included in the .war file. Proceed to export the project as a .war file. You will find the libraries under /WEB-INF/lib.

like image 50
Waliaula Makokha Avatar answered Sep 20 '22 20:09

Waliaula Makokha


You need to install Maven for Eclipse and convert your project to a Maven-project (Right-click project -> Configure -> Convert to Maven project).

As you have configured your project, you can run it as "Maven Build..." and specify install:install to build a war file which, by default, includes your libraries from Maven.

Maven has quite to much feautures to explain all that right now. Just take a look at the project site. It'll take you some time to understand and configure but when you understand it, it will save a lot of time for you :)

like image 36
dwalldorf Avatar answered Sep 21 '22 20:09

dwalldorf