Buen dia, tengo un proyecto donde he configurado mi archivo log4j.properties en una carpeta LIB, localmente me funciona, tengo esto:
public GGSNLogger(Class clase) {
File log4jfile = new File("LIB/log4j.properties");
PropertyConfigurator.configure(log4jfile.getAbsolu tePath());
this.logger = Logger.getLogger(clase.getName());
}
cuando llamo al java desde un shell:
entro al directorio donde esta el JAR
cd /home1/isf/MED/XML-ERICSSON/GGSN/JAR
java -jar MediacionxmlGGSN.jar $IN $archivo
al ejecutarlo me da el siguiente error
log4jfile.getAbsolutePath(): /home1/isf/MED/XML-ERICSSON/GGSN/JAR/LIB/log4j.properties
Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/log4j/PropertyConfigurator
at logging.GGSNLogger.<init>(GGSNLogger.java:23)
at mediacionxmlggsn.MediacionxmlGGSN.<clinit>(Mediaci onxmlGGSN.java:18)
Caused by: java.lang.ClassNotFoundException: org.apache.log4j.PropertyConfigurator
at java.net.URLClassLoader$1.run(URLClassLoader.java: 200)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.j ava:188)
at java.lang.ClassLoader.loadClass(ClassLoader.java:3 07)
at sun.misc.Launcher$AppClassLoader.loadClass(Launche r.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:2 52)
at java.lang.ClassLoader.loadClassInternal(ClassLoade r.java:320)
que otra forma puedo indicarle el archivo .properties sin eviarle getAbsolutePath