When you launch with -jar, the classpath is ignored and the jar content is used only.<div>See -jar documentation:</div><div>"<span class="Apple-style-span" style="font-family: 'Times New Roman'; font-size: medium; ">When you use this option, the JAR file is the source of all user classes, and other user class path settings are ignored."</span></div>
<div><font class="Apple-style-span" face="'Times New Roman'"><span class="Apple-style-span" style="font-size: medium;"><br></span></font></div><div><font class="Apple-style-span" face="'Times New Roman'"><span class="Apple-style-span" style="font-size: medium;">regards<br>
</span></font><br><div class="gmail_quote">2010/6/23 Wolfgang Laun <span dir="ltr"><<a href="mailto:wolfgang.laun@gmail.com">wolfgang.laun@gmail.com</a>></span><br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
The application works fine in Eclipse.<br><br>In Eclipse, I created a jar file x.jar from the .class and a few .drl files, and copied x.jar to /tmp/x/<br><br>Now, in /tmp/x<br> CP="droos/*:drools/lib/*"<br> java -cp "$CP" -jar dpvt.jar par...<br>
This fails on the first attempt to access any class from a drools jar file.<br><br>In /tmp/x, I unpack x.jar and call<br> CP="droos/*:drools/lib/*:."<br> java -cp "$CP" rss.aws.init.Main par...<br>
AND THIS WORKS!<br><br>So, what is different when starting a Java program with java -jar as opposed<br>to java x.y.Main? <br><br>The stack dump is not very informative:<br><br>java.lang.NoClassDefFoundError: org/drools/KnowledgeBaseFactory<br>
at rss.aws.engine.impl.DroolsEngine.setup(DroolsEngine.java:30)<br> at rss.aws.init.Core.init(Core.java:51)<br> at rss.aws.init.Core.getInstance(Core.java:16)<br> at rss.aws.init.Main.<init>(Main.java:35)<br>
at rss.aws.init.Main.main(Main.java:191)<br>Caused by: java.lang.ClassNotFoundException: org.drools.KnowledgeBaseFactory<br> at java.net.URLClassLoader$1.run(URLClassLoader.java:217)<br> at java.security.AccessController.doPrivileged(Native Method)<br>
at java.net.URLClassLoader.findClass(URLClassLoader.java:205)<br> at java.lang.ClassLoader.loadClass(ClassLoader.java:319)<br> at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294)<br> at java.lang.ClassLoader.loadClass(ClassLoader.java:264)<br>
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:332)<br> ... 5 more<br><br> Any ideas?<br><font color="#888888">-W<br>
</font><br>_______________________________________________<br>
rules-users mailing list<br>
<a href="mailto:rules-users@lists.jboss.org">rules-users@lists.jboss.org</a><br>
<a href="https://lists.jboss.org/mailman/listinfo/rules-users" target="_blank">https://lists.jboss.org/mailman/listinfo/rules-users</a><br>
<br></blockquote></div><br></div>