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]
