On 18/12/2007, Steinar Bang <[EMAIL PROTECTED]> wrote:
>
> >>>>> "Stuart McCulloch" <[EMAIL PROTECTED]>:
>
> > well, there are system scope dependencies that let you refer to
> > library artifacts in a fixed location like "/usr/share/lib/..." but
> > their use is discouraged, because it makes things less portable:
>
> >
> http://maven.apache.org/guides/introduction/introduction-to-dependency-mechanism.html
>
> I tried doing this:
> <dependency>
> <groupId>org.eclipse.osgi</groupId>
> <artifactId>org.eclipse.osgi</artifactId>
> <version>3.2.1-R32x_v20060919</version>
> <scope>system</scope>
>
> <systemPath>${basedir}/someosgiapp/org.eclipse.osgi_3.2.1_R32x_v20060919.jar</systemPath>
> </dependency>
>
> (I first tried basing <systemPath> to be based on
> ${project.build.directory}, since the OSGi app is downloaded and
> unpacked with dependency:unpack, but that didn't work, since systemPath
> needs to be absolute. However ${basedir} seems to be absolute, so using
> it got me past that stage)
I did a quick test and using ${basedir} appeared to work for me - note that
the basedir
is the directory with the pom, so if you unpack to "target/someosgiapp" then
you need
to use <systemPath>${basedir}/target/someosgiapp/...etc...</systemPath>
>
>
also check which build phase you do the unpacking, as the dependency will be
checked
during [resources:resources] - so you probably need to bind the unpacking
goal to the
generate-resources phase...
But maven didn't like it:
> [INFO]
> ------------------------------------------------------------------------
> [ERROR] BUILD ERROR
> [INFO]
> ------------------------------------------------------------------------
> [INFO] Failed to resolve artifact.
>
> Missing:
> ----------
> 1) org.eclipse.osgi:org.eclipse.osgi:jar:3.2.1-R32x_v20060919
>
> Try downloading the file manually from the project website.
>
> Then, install it using the command:
> mvn install:install-file -DgroupId=org.eclipse.osgi -DartifactId=
> org.eclipse.osgi \
> -Dversion=3.2.1-R32x_v20060919 -Dpackaging=jar
> -Dfile=/path/to/file
>
> Path to dependency:
> 1) com.somecompany.someapp:com.somecompany.someapp:jar:0.1.0
> 2) org.eclipse.osgi:org.eclipse.osgi:jar:3.2.1-R32x_v20060919
>
> ----------
> 1 required artifact is missing.
>
> for artifact:
> com.somecompany.someapp:com.somecompany.someapp:jar:0.1.0
>
> from the specified remote repositories:
> [snip!]
>
> There is a version of the OSGi runtime with the given
> groupId/artifactId/version already in my local maven repository.
>
> Here's its POM:
>
> <?xml version="1.0" encoding="UTF-8"?><project>
> <modelVersion>4.0.0</modelVersion>
> <groupId>org.eclipse.osgi</groupId>
> <artifactId>org.eclipse.osgi</artifactId>
> <version>3.2.1-R32x_v20060919</version>
> <distributionManagement>
> <status>deployed</status>
> </distributionManagement>
> </project>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>
--
Cheers, Stuart