Details
-
Type:
Improvement
-
Status:
Closed
-
Priority:
Minor
-
Resolution: Duplicate
-
Affects Version/s: None
-
Fix Version/s: 1.6
-
Labels:None
Description
One nice feature for the war plugin would be to make it
possible to specify that a dependency should be included in the manifest classpath of the war. Is is this something that is considered?
The jelly-code is in the ejb-plugin, so I suppose it would be pretty
easy to implement (I'd be happy to write a patch).
The reason is that when you have an ejb module and one or many
web-modules in a J2EE-project (as we have) you often have common
dependencies between these modules. Let's say you need commons-logging
in all modules then you'd probably want to include
commons-logging-x.x.x.jar in the EAR-file, and reference it from all
other modules as manifest classpath entries.
In the project.xml of a webapplication you would thus have:
<!-- This is a dependency shared by many modules -->
<dependency>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</groupId>
<version>1.0.3</version>
<properties>
<war.manifest.classpath>true</war.manifest.classpath>
</properties>
</dependency>
<!-- This is a webapp dependency only -->
<dependency>
<groupId>webwork</groupId>
<artifactId>webwork</artifactId>
<version>1.3</version>
<properties>
<war.bundle>true</war.bundle>
</properties>
</dependency>
Issue Links
- duplicates
-
MPWAR-21
war-plugin should be able to add manifest Class-Path Entry for dependencies
-
This on was pretty easy to hack.
Assuming that used sets war.manifest.classpath property to true in dependency section, war:war goal geneated Class-Path entry of manifest based on these properties.
The change is implemented in attached file.