[rules-users] execution using "java -jar x.jar ..." fails

Wolfgang Laun wolfgang.laun at gmail.com
Wed Jun 23 10:44:48 EDT 2010


The application works fine in Eclipse.

In Eclipse, I created a jar file x.jar from the .class and a few .drl files,
and copied x.jar to /tmp/x/

Now, in /tmp/x
   CP="droos/*:drools/lib/*"
   java -cp "$CP" -jar dpvt.jar par...
This fails on the first attempt to access any class from a drools jar file.

In /tmp/x, I unpack x.jar and call
   CP="droos/*:drools/lib/*:."
   java -cp "$CP" rss.aws.init.Main par...
AND THIS WORKS!

So, what is different when starting a Java program with java -jar as opposed
to java x.y.Main?

The stack dump is not very informative:

java.lang.NoClassDefFoundError: org/drools/KnowledgeBaseFactory
    at rss.aws.engine.impl.DroolsEngine.setup(DroolsEngine.java:30)
    at rss.aws.init.Core.init(Core.java:51)
    at rss.aws.init.Core.getInstance(Core.java:16)
    at rss.aws.init.Main.<init>(Main.java:35)
    at rss.aws.init.Main.main(Main.java:191)
Caused by: java.lang.ClassNotFoundException: org.drools.KnowledgeBaseFactory
    at java.net.URLClassLoader$1.run(URLClassLoader.java:217)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:205)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:319)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:264)
    at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:332)
    ... 5 more

 Any ideas?
-W
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/rules-users/attachments/20100623/3e3636c6/attachment.html 


More information about the rules-users mailing list