[ 
https://issues.apache.org/jira/browse/IVY-1313?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Nihal Sinha updated IVY-1313:
-----------------------------

    Attachment: IVY-1313.patch

Attaching a patch to fix the issue in question.  I've changed the install ant 
task to allow you to specify a "conf" attribute which can be a single 
configuration name or a comma-separated list of configuration names to be 
copied from the source repository to the destination repository with respect to 
the given module revision info.  Also added a few test cases.
                
> install task does not allow specification of conf
> -------------------------------------------------
>
>                 Key: IVY-1313
>                 URL: https://issues.apache.org/jira/browse/IVY-1313
>             Project: Ivy
>          Issue Type: Bug
>          Components: Ant
>    Affects Versions: 2.2.0
>         Environment: Windows XP
>            Reporter: Mike Menu
>         Attachments: IVY-1313.patch
>
>
> When running <ivy:install...> task there is no option to specify which config 
> should be considered.  As it is currently, it seems the default conf is the 
> one that is used, therefore if a dependency exists which does not specify a 
> mapping from master default conf, the dependency will not be included during 
> the install.  In that case the artifacts installed in the *to* resolver will 
> *not* be able to resolve all needed artifacts under some configurations.  
> For example, say I had a module defined as in the following example:
> <info organisation="my-org" module="my-module" revision="1.0"/>
>   <configurations>
>     <conf name="default" visibility="public" description="runtime 
> dependencies and master artifact can be used with this conf" 
> extends="runtime,master"/>
>     [...]
>     <conf name="endorsed" visibility="public" description="this scope is used 
> for components/lib/endorsed dependencies."/>
>   </configurations>
>   <publications>
>     <artifact name="my-org" ext="jar"/>
>   </publications>
>   <dependencies>
>     <dependency org="org.apache.xerces" name="xml-apis" rev="2.9.1" 
> conf="endorsed-&gt;default"/>
>   </dependencies>
> </ivy-module>
> In that case the ant task to install this module from my-resolver to 
> another-resolver would look something like this:
>     <ivy:install organisation="my-org" module="my-module" revision="1.0" 
> from="my-resolver" to="another-resolver" transitive="true" overwrite="true"/>
> This task would *not* install org.apache.xerces#xml-apis;2.9.1 onto 
> another-resolver.  As a result, using <ivy:retrieve...conf="endorsed"/> 
> against another-resolver would fail since it would attempt to find dependency 
> org.apache.xerces#xml-apis;2.9.1 which does not exist in the repository 
> (since it was never installed).
> <ivy:install...> should have the option of specifying which configuration(s) 
> should be considered.  If not specified then it should default to * meaning 
> all configurations defined in module being configured should be considered 
> when locating which modules should be installed.

--
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

        

Reply via email to