ant-notifications mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jean-Louis Jouannic (Commented) (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (IVY-899) POM packaging not always mapped to main artifact file extension correctly
Date Mon, 12 Dec 2011 14:34:31 GMT

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

Jean-Louis Jouannic commented on IVY-899:
-----------------------------------------

I face exactly the same issue when I try to add a dependency to an Apache ServiceMix component
in a grails project
{noformat}
dependencies{
   runtime(group: 'org.apache.servicemix', name: 'servicemix-cxf-se', version: '2010.01')
}
{noformat}
The pom file associated with this artifact contains a {{jbi-component}} packaging element,
but the resulting artifact is a jar file. Ivy erroneously searches for
{{org.apache.servicemix#servicemix-cxf-se;2010.01!servicemix-cxf-se.jbi-component}}
rather than
{{org.apache.servicemix#servicemix-cxf-se;2010.01!servicemix-cxf-se.jar}}

The following packaging->extension mappings should be also considered :
* jbi-component -> jar
* jbi-shared-library -> jar

                
> POM packaging not always mapped to main artifact file extension correctly
> -------------------------------------------------------------------------
>
>                 Key: IVY-899
>                 URL: https://issues.apache.org/jira/browse/IVY-899
>             Project: Ivy
>          Issue Type: Bug
>          Components: Maven Compatibility
>    Affects Versions: 2.0.0-beta-2
>            Reporter: Tom Widmer
>
> POM files contain a packaging element that Ivy attempts to map to an extension for the
main artifact of the module in question. In 2.0.0beta2, it maps as follows:
> ejb->jar
> bundle->jar only for org.apache.felix#maven-bundle-plugin
> [other]->[other]
> That mapping is not sufficient to cover common POM files. For a start:
> 1. maven-plugin is a standard packaging type, which should map to the extension jar.
>  - e.g. Ivy erroneously searches for 
> org.apache.axis2#axis2-ant-plugin;1.4.1!axis2-ant-plugin.maven-plugin 
> rather than: 
> org.apache.axis2#axis2-ant-plugin;1.4.1!axis2-ant-plugin.jar
> 2. bundle seems to be used by various things, and is a jar in the cases I've seen:
> org.apache.geronimo.specs#geronimo-activation_1.1_spec;1.0.1!geronimo-activation_1.1_spec.bundle
> should be
> org.apache.geronimo.specs#geronimo-activation_1.1_spec;1.0.1!geronimo-activation_1.1_spec.jar
> Also, apparently POMs can have custom packaging which might need to map to some other
arbitrary file extension, or possibly potentially to multiple files?
> The ideal solution is to provide customisable mapping of POM packaging to file extensions
that can be specified somewhere in the Ivy settings (it is somewhat similar to namespaces).
> An interim solution is to change the mapping as follows:
> ejb->jar
> ejb[N]->jar?? e.g. ejb3->jar
> maven-plugin->jar
> bundle->jar if and only if .bundle does not exist but .jar does (it may not be easy
to check for file existence in the relevant code - I'd be happy to always map bundle to jar,
but others might not be - might be fine for an interim solution though?).
> [other]->[other]
> The interim solution could perhaps be done for 2.0 (it is only a few minutes work I think),
though the properly customisable solution might take longer than that.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Mime
View raw message