You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@maven.apache.org by "Luca De Petrillo (JIRA)" <ji...@codehaus.org> on 2010/10/25 15:19:05 UTC
[jira] Created: (MECLIPSE-673) EAR projects with
defaultLibBundleDir set to "APP-INF/lib" generate wrong .components
descriptor for eclipse
EAR projects with defaultLibBundleDir set to "APP-INF/lib" generate wrong .components descriptor for eclipse
------------------------------------------------------------------------------------------------------------
Key: MECLIPSE-673
URL: http://jira.codehaus.org/browse/MECLIPSE-673
Project: Maven 2.x Eclipse Plugin
Issue Type: Bug
Components: WTP support
Affects Versions: 2.8
Environment: Eclipse 3.5 SR2
WTP 3.1.1 (bundled with Elipse 3.5 SR2)
Reporter: Luca De Petrillo
The eclipse plugin doesn't handle correctly the property defaultLibBundleDir for ear projects when it's set to a multiple sub-directory path (it work well if it's set to "lib", but not if it's set to "APP-INF/lib").
Looking at the generated .components file for the ear project, dependencies are declared in this manner:
{code:xml}
<dependent-module archiveName="../antlr-2.7.6.jar" deploy-path="APP-INF/lib" handle="module:/classpath/var/M2_REPO/antlr/antlr/2.7.6/antlr-2.7.6.jar">
<dependency-type>uses</dependency-type>
</dependent-module>
{code}
This make eclipse to copy the library in "<ear-root>/APP-INF/lib/APP-INF" due the well know bug in WTP.
I've tried to edit the .components adding another "../" in the archiveName like this:
{code:xml}
<dependent-module archiveName="../../antlr-2.7.6.jar" deploy-path="APP-INF/lib" handle="module:/classpath/var/M2_REPO/antlr/antlr/2.7.6/antlr-2.7.6.jar">
<dependency-type>uses</dependency-type>
</dependent-module>
{code}
and the library has been placed correctly in "<ear-root>/APP-INF/lib".
I've also tried to fully remove the archiveName property as i read somewhere (i don't remember where i read it) like this:
{code:xml}
<dependent-module deploy-path="APP-INF/lib" handle="module:/classpath/var/M2_REPO/antlr/antlr/2.7.6/antlr-2.7.6.jar">
<dependency-type>uses</dependency-type>
</dependent-module>
{code}
and also with this declaration, the library has been placed correctly.
So, i think that a fix for this could be to add a "../" for each directory specified in defaultLibBundleDir, or simply remove the archiveName property from the descriptor (i don't know if removing the archiveName property works on all WTP version... but for me it works well with WTP 3.1).
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira