Question

I'm fairly new to the Eclipse and Maven2 worlds. I'm struggling to comprehend how to add a Maven project dependency on Apache Jena in a simple way. Specifically, I'd like to add a dependency such as

<dependency>
  <groupId>org.apache.jena</groupId>
  <artifactId>jena</artifactId>
  <version>${jena.version}</version>
</dependency>

And this would automatically pull in the modules(eg. jena-arq, jena-core, etc). However, adding this dependency results in a Missing artifact org.apache.jena:jena:jar:2.11.1 error. If I add <type>pom</type> to the dependency the error is gone but I do not get the jars in my project.

In any event, as I understand it, POM is more suited to project <--modules dependencies and what I'm really looking for is project --> lib archive dependencies.

How do I establish such a relationship? I considered simply replicating the dependency for each module in Jena since it's using a property anyway. However, it is possible, and Jena is a prime example, that not all modules in a project share the same version. For example jena-core is on 2.11.1 where jena-tdb is on 1.0.1 however jena-2.11.1 encompasses jena-tdb.

Thanks

Was it helpful?

Solution

See http://jena.apache.org/download/maven.html for details.

In brief:

  <dependency>
    <groupId>org.apache.jena</groupId>
    <artifactId>apache-jena-libs</artifactId>
    <type>pom</type>
    <version>2.11.1</version> <!-- Set version -->
  </dependency>

Note that it is type pom.

OTHER TIPS

there is not a easy way do this. you must define every dependency jar with special version.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top