Hi,

I forgot to add my pom content. Here it is:

----
<project xmlns="http://maven.apache.org/POM/4.0.0"; xmlns:xsi="
http://www.w3.org/2001/XMLSchema-instance";
  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
http://maven.apache.org/maven-v4_0_0.xsd";>
  <modelVersion>4.0.0</modelVersion>
  <groupId>com.mycompany.app</groupId>
  <artifactId>my-app</artifactId>
  <packaging>jar</packaging>
  <version>1.0-SNAPSHOT</version>
  <name>my-app</name>
  <url>http://maven.apache.org</url>

  <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
  </properties>

  <dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>3.8.1</version>
      <scope>test</scope>
    </dependency>
    <dependency>
        <groupId>org.apache.jena</groupId>
        <artifactId>apache-jena-libs</artifactId>
        <version>3.1.1</version>
        <type>pom</type>
    </dependency>
    <dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-core</artifactId>
<version>2.7</version>
</dependency>
  </dependencies>


<build>
 <plugins>
   <plugin>
     <artifactId>maven-assembly-plugin</artifactId>
     <configuration>
       <archive>
         <manifest>
           <mainClass>com.mycompany.app.RdfWriter</mainClass>
         </manifest>
       </archive>
       <descriptorRefs>
         <descriptorRef>jar-with-dependencies</descriptorRef>
       </descriptorRefs>
     </configuration>
   </plugin>
 </plugins>
</build>
</project>

----

I added org.apache.logging.log4j because another error message complaining
about not finding it.

Thank you

On Sun, Feb 5, 2017 at 6:03 PM, Karim Mont <[email protected]> wrote:

> Hi,
>
> I opted for the third solution. But I still need your help.
>
> Here is the error I am getting when I execute my final jar:
>
> java -jar target/my-app-1.0-SNAPSHOT-jar-with-dependencies.jar
> SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
> SLF4J: Defaulting to no-operation (NOP) logger implementation
> SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further
> details.
> Exception in thread "main" java.lang.ExceptionInInitializerError
> at com.mycompany.app.RdfWriter.main(RdfWriter.java:13)
> Caused by: java.lang.NullPointerException
> at org.apache.jena.tdb.sys.EnvTDB.processGlobalSystemProperties(
> EnvTDB.java:33)
> at org.apache.jena.tdb.TDB.init(TDB.java:248)
> at org.apache.jena.tdb.sys.InitTDB.start(InitTDB.java:29)
> at org.apache.jena.system.JenaSystem.lambda$init$2(JenaSystem.java:119)
> at java.util.ArrayList.forEach(ArrayList.java:1249)
> at org.apache.jena.system.JenaSystem.forEach(JenaSystem.java:194)
> at org.apache.jena.system.JenaSystem.forEach(JenaSystem.java:171)
> at org.apache.jena.system.JenaSystem.init(JenaSystem.java:117)
> at org.apache.jena.rdf.model.ModelFactory.<clinit>(ModelFactory.java:49)
> ... 1 more
>
> I am using maven-assembly-plugin to include all dependencies in the final
> jar.
>
> Before running the jar I  used these 2 commans (successfully) after
> removing everything from my .m2 folder:
>
> mvn clean install
> mvn clean compile assembly:single
>
> And then  I run this command that gives me the error above:
>
> java -jar target/my-app-1.0-SNAPSHOT-jar-with-dependencies.jar
>
>
> Thank you
>
>
>
>
> On Sun, Jan 29, 2017 at 4:46 AM, Lorenz B. <[email protected]
> leipzig.de> wrote:
>
>> That doesn't work because only your own classes are in the classpath then.
>>
>> Options:
>>
>> 1) Add all necessary JAR files from the Jena distribution to the classpath
>> 2) Use the Maven exec plugin from the command line
>> 3) build a fat JAR that also contains the classes of the Maven
>> dependencies
>> > Hi,
>> >
>> > I am trying to do the first example of the jena rdf tutorial.
>> > It seems that the class is not found even the maven build was
>> successful.
>> >
>> > Here is my class code:
>> >
>> > package com.mycompany.app;
>> >
>> > import org.apache.jena.rdf.model.*;
>> > import org.apache.jena.vocabulary.*;
>> >
>> > public class RdfWriter {
>> >     static String personURI    = "http://somewhere/JohnSmith";;
>> >     static String fullName     = "John Smith";
>> >
>> > public static void main(String[] args) {
>> > //        // create an empty model
>> >         Model model = ModelFactory.createDefaultModel();
>> > //       // create the resource
>> > //       Resource johnSmith = model.createResource(personURI);
>> > //      // add the property
>> > //      johnSmith.addProperty(VCARD.FN, fullName);
>> > System.out.println("this is rdf writer");
>> > }
>> >
>> > }
>> >
>> > I am running it like this:
>> >
>> > java -cp target/my-app-1.0-SNAPSHOT.jar com.mycompany.app.RdfWriter
>> >
>> > And here is my pom file:
>> >
>> > <project xmlns="http://maven.apache.org/POM/4.0.0"; xmlns:xsi="
>> > http://www.w3.org/2001/XMLSchema-instance";
>> >   xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
>> > http://maven.apache.org/maven-v4_0_0.xsd";>
>> >   <modelVersion>4.0.0</modelVersion>
>> >   <groupId>com.mycompany.app</groupId>
>> >   <artifactId>my-app</artifactId>
>> >   <packaging>jar</packaging>
>> >   <version>1.0-SNAPSHOT</version>
>> >   <name>my-app</name>
>> >   <url>http://maven.apache.org</url>
>> >
>> >   <properties>
>> >     <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
>> >   </properties>
>> >
>> >   <dependencies>
>> >     <dependency>
>> >       <groupId>junit</groupId>
>> >       <artifactId>junit</artifactId>
>> >       <version>3.8.1</version>
>> >       <scope>test</scope>
>> >     </dependency>
>> >     <dependency>
>> >         <groupId>org.apache.jena</groupId>
>> >         <artifactId>apache-jena-libs</artifactId>
>> >         <version>3.1.1</version>
>> >         <type>pom</type>
>> >     </dependency>
>> >   </dependencies>
>> > </project>
>> >
>> > Here is the full error that I get:
>> > Exception in thread "main" java.lang.NoClassDefFoundError:
>> > org/apache/jena/rdf/model/ModelFactory
>> > at com.mycompany.app.RdfWriter.main(RdfWriter.java:13)
>> > Caused by: java.lang.ClassNotFoundException:
>> > org.apache.jena.rdf.model.ModelFactory
>> > at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
>> > at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
>> > at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
>> > at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
>> > ... 1 more
>> >
>> --
>> Lorenz Bühmann
>> AKSW group, University of Leipzig
>> Group: http://aksw.org - semantic web research center
>>
>>
>

Reply via email to