Thanks for the detailed help!  It turns out that the
<maven:makeRelativePath> tag did everything I needed..  Turned out to be
pretty simple..  At least, I think so..

Eric

> -----Original Message-----
> From: Brett Porter [mailto:[EMAIL PROTECTED]
> Sent: Friday, September 24, 2004 4:08 PM
> To: Maven Developers List
> Subject: Re: cvs commit: maven-plugins/eclipse/xdocs changes.xml
>
>
> That's a poorly named property if ever I saw one :)
>
> lib is an artifact, not a dependency. I don't see why modifying the
> dependency helps, and its not the right thing to do (model/runtime
> separation - and yes, I notice that the version does this anyway).
>
> lib.urlPath here should give you the
> /commons-logging/jars/commons-logging-1.0.3.jar part, but this isn't
> what you want.
>
> A path jar override is unlikely to be in the repository (people often
> use it to test, because the jars are there though). It's actually
> usually in basedir.
>
> I suggest you do the following:
> - take lib.path
> - if it starts with ${maven.repo.local}, swap it for MAVEN_REPO
> - if it starts with ${basedir}/, remove it.
>
> Sound right?
>
> Cheers,
> Brett
>
> Eric Pugh wrote:
>
> >Thanks Brett,
> >
> >That clears things up a bit..  Unfortunantly, this doesn't seem
> as easy to
> >fix as I think it should..  ArtifactListBuilder is responsible
> for all the
> >setup
> >of the artifacts.  However, ArtifactListBuilder properly updates the path
> >variable of the artifact.  So, if I change my jelly in
> classpath.jelly from:
> >          <classpathentry kind="var" path="MAVEN_REPO${lib.urlPath}"/>
> >to
> >          <classpathentry kind="var" path="${lib.path}"/>
> >
> >it takes into account the correct version or location.
> Unfortunantly that
> >means that I get a URL like this
> >
> c:\java\maven\repository\commons-logging\jars\commons-logging-1.0.3.jar
> >
> >And what I really need is just the
> >/commons-logging/jars/commons-logging-1.0.3.jar part.  While I could get
> >slick w/ the textediting, it seems like something along the lines of this
> >should be applied:
> >
> >Index: ArtifactListBuilder.java
> >===================================================================
> >RCS file:
> >/home/cvs/maven/src/java/org/apache/maven/ArtifactListBuilder.java,v
> >retrieving revision 1.16
> >diff -u -r1.16 ArtifactListBuilder.java
> >--- ArtifactListBuilder.java 23 Mar 2004 02:18:18 -0000      1.16
> >+++ ArtifactListBuilder.java 24 Sep 2004 13:47:41 -0000
> >@@ -68,13 +68,15 @@
> >                     // User is requesting a specific version of a
> >dependency
> >                     // be used.
> >                     d.setVersion( mavenJarProperty );
> >+
> >artifact.getDependency().setUrl(artifact.generatePath());
> >                     artifact.setPath(
> >project.getContext().getMavenRepoLocal() + artifact.generatePath() );
> >                 }
> >                 else
> >                 {
> >                     // User is requesting a specific path to a
> dependency
> >-                    // be used.
> >+                    // be used.
> >                     artifact.setPath( new File(
> >mavenJarProperty ).getAbsolutePath() );
> >+                    artifact.getDependency().setUrl(mavenJarProperty);
> >                 }
> >             }
> >             else
> >
> >
> >
> >It boils down to needing the URL, not the full path.
> >
> >Eric
> >
> >
> >
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to