You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@maven.apache.org by "Marat Abrarov (Jira)" <ji...@apache.org> on 2020/12/06 17:20:00 UTC

[jira] [Commented] (MEAR-182) Skinny WAR's - Skip Class-Path Modification in Manifest

    [ https://issues.apache.org/jira/browse/MEAR-182?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17244796#comment-17244796 ] 

Marat Abrarov commented on MEAR-182:
------------------------------------

It looks like there is a bug in implementation of {{skipClassPathModification}} option introduced in MEAR-182. If {{skipClassPathModification}} is {{true}} and original MANIFEST.mf of EAR module artifact has no {{Class-Path}} entry, then empty {{Class-Path}} entry is added into EAR module. I tried to fix this bug in [pull request #28|https://github.com/apache/maven-ear-plugin/pull/28]. Please review and merge if agree.

> Skinny WAR's - Skip Class-Path Modification in Manifest
> -------------------------------------------------------
>
>                 Key: MEAR-182
>                 URL: https://issues.apache.org/jira/browse/MEAR-182
>             Project: Maven EAR Plugin
>          Issue Type: Improvement
>    Affects Versions: 2.9
>            Reporter: Mario Däpp
>            Assignee: Karl Heinz Marbaise
>            Priority: Major
>             Fix For: 2.10
>
>         Attachments: MEAR-182-patch.txt
>
>
> From Java EE 5, a library directory may be specified in the application.xml (element library-directory). The Maven EAR Plugin already supports this for generating the application.xml (value of property defaultLibBundleDir).
> The Java EE 5 specification mandates that all JAR files contained in the library directory be made available to all modules within the EAR file (cf. chapter EE.8.2.1 Bundled Libraries, section 2).
> If one specifies both the skinnyWars (value = true) and defaultLibBundleDir parameters, the libraries will be removed from the WAR and copied to the defaultLibBundleDir. They will also be added to the Class-Path in the WAR files manifest. This is unnecessary as per the Java EE 5 specification. Even worse, it breaks my EAR on WebLogic (classloading issues).
> I therefore propose the following improvement to the skinny WAR's functionality: If the Java EE version is 5 or greater and the defaultLibBundleDir has been specified, the Class-Path in the WAR's manifest should remain unchanged.
> I've created a corresponding patch and integration test.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)