[ 
https://issues.apache.org/jira/browse/BUILDR-494?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12903378#action_12903378
 ] 

Klaas Prause commented on BUILDR-494:
-------------------------------------

I would say that this is not a bug, but a feature.
* ivysettings.xml does not define a different cache or repository structure, so 
Ivy uses the default locations. Default locations is *{user.home}/.ivy2*
* ivy4r does not use *retrieve* to download and copy/symlink the dependencies 
into the project directory but *should* use the libs in the cache (this is at 
least how it is used right now, after we switched from retrieving the artifacts 
into each project)
* The mentioned workaround is the standard configuration feature for the ivy4r 
plugin. But it is *not* recommended to configure Ivy like this. Ivy is supposed 
to have a central home for a single machine. So that all projects using ivy are 
sharing one cache dir!

I tested this with an existing project. The paths are like this
{noformat}
<classpathentry kind="lib" 
path="../../Ivy/ivy-home/cache/commons-beanutils/commons-beanutils/1.7.0/commons-beanutils-1.7.0.jar"/>
{noformat}  

Our structure is like this:
{noformat}  
workspace/MainProject/Subproject <- .classpath from this project
worspace/Ivy <- Ivy-Home
{noformat}  

So I would say it works as expected.

My recommendations are:
* define an ivysettings.xml where the ivy-home is the same for all devolopers. 
We are using the structure as above with an workspace dir where all projects 
must be checked out to and the ivy-home as dir within the workspace so that all 
projects can use the same Ivy cache.

> ivy4r buildr::eclipse integration
> ---------------------------------
>
>                 Key: BUILDR-494
>                 URL: https://issues.apache.org/jira/browse/BUILDR-494
>             Project: Buildr
>          Issue Type: Bug
>          Components: IDE
>    Affects Versions: 1.4.1
>         Environment: Buildr 1.4.1 (JRuby 1.5.1), java version "1.6.0_18" 
> openjdk, Ubuntu 10.04
>            Reporter: Nikos Maris
>         Attachments: buildfile, ivy.xml, ivysettings.xml
>
>
> When: jruby -S buildr package eclipse
> directory structure{
> src/HelloWorld.java
> buildfile
> ivy.xml
> ant-scripts/ixysettings.xml
> }
> Then: Some lines in the generated classpath are:
> <classpathentry kind="lib" 
> path="../../../../../.ivy2/cache/org.jbehave/jbehave-core/jars/jbehave-core-2.5.9.jar"/>
> Expected:
> <classpathentry kind="lib" path="lib/default/jbehave-core-2.5.9.jar"/>
> Workaround: The following code changes the ivy cache path:
> ivy.conf :compile => 'default'
> ivy.ivy4r.property['ivy.home'] = path_to('lib')

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to