I'm new to maven and I was trying to learn using external dependency. So, I used to Log4j library and put the jar file in /src/lib folder (Using eclipse)
I can run the code from eclipse (It just asks to initialize log4j property file) I'm trying to run on the command line. So, I did "mvn clean install" in the project folder and then went to target/classes and try to run command "java com.siddhant.samplemavenproject1.App), it gives me an error Exception in thread "main" java.lang.NoClassDefFoundError:
org/apache/log4j/Logger
at com.siddhant.samplemavenproject1.App.main(App.java:14)
Caused by: java.lang.ClassNotFoundException: org.apache.log4j.Logger
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
App.java file is like:
package com.siddhant.samplemavenproject1;
import org.apache.log4j.Logger;
public class App
{
public static void main( String[] args )
{ Logger logger = Logger.getLogger(App.class.getSimpleName());
System.out.println( "Hello World!" );
//Util.printMessage("This is my sample message");
logger.info("This is logger message");
}
}
PS: I also installed the external library in local repository using command "mvn install:install-file -Dfile=/Users/siddhantjawa/Documents/testworkspace/samplemavenproject1/src/lib/log4j.jar -DgroupId=com.siddhant -DartifactId=log4j -Dversion=0.0.1-SNAPSHOT -Dpackaging=jar".