You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@maven.apache.org by "mentallurg - (JIRA)" <ji...@codehaus.org> on 2013/05/18 01:46:52 UTC

[jira] (MECLIPSE-741) JARs put to the root of EAR instead of lib

mentallurg - created MECLIPSE-741:
-------------------------------------

             Summary: JARs put to the root of EAR instead of lib
                 Key: MECLIPSE-741
                 URL: https://jira.codehaus.org/browse/MECLIPSE-741
             Project: Maven 2.x Eclipse Plugin
          Issue Type: Bug
          Components: WTP support
    Affects Versions: 2.9, 2.8
         Environment: - Maven 3.0.5.
- Eclipse "Juno SR 1" 
- Oracle JDK 1.6.0.45 64-bit
- Windows 7 64-bit

            Reporter: mentallurg -
            Priority: Critical


The pom.xml of EAR module defines a "lib" directory for JARs:
{{  <defaultLibBundleDir>lib</defaultLibBundleDir>}}
eclipse:eclipse generates org.eclipse.wst.common.component with errors. Each JAR is prepended with "../".
Example:
{{  <dependent-module archiveName="../log4j-1.2.16.jar" deploy-path="lib"  }}
"../" means that this JAR will be put to "lib/../", i.e. to the root of EAR. When application is started, then JARs are not found under "lib" and the application fails to start.

If deployment assembly is created manually in Eclipse, configuration looks as follows:
{{  <dependent-module archiveName="log4j-1.2.16.jar" deploy-path="lib"  }}
Then Eclipse puts JARs to the lib within EAR:
lib/log4j-1.2.16.jar
This is correct, applications starts and works correctly.


The prefix "../" should be removed from the archiveName.


According to the source code of AbstractWtpResourceWriter.java:
{quote}
// This is a very ugly hack around a WTP bug! a delpoydir in the configuration file is duplicated.
// a deploy dir like "lib" will be used as "lib/lib" the only workig workaround is to include a ..
// in the archive name.
archiveName = "../" + artifactPath.getName();
{quote}

There is no info, what bug is meant. May be this? https://issues.sonatype.org/browse/MNGECLIPSE-2150. But was fixed in 2010.
Instead of fixing a bug this peace of code just produces a _new bug_.

*Solution:* The "../" prefix should not be added to the archiveName.


--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira