From: Sells, F. <fr...@ad...> - 2006-03-30 20:18:34
|
most common problem is jython.jar is not on your classpath; it also makes life easier to compile all the *.py modules in the jython lib directory into a separate jar which can be used to support imports from those libs when not running as jython. -----Original Message----- From: jyt...@li... [mailto:jyt...@li...]On Behalf Of Phil Sent: Thursday, March 30, 2006 2:57 PM To: jyt...@li... Subject: [Jython-users] java.lang.NoClassDefFoundError: org/python/parser/ast/VisitorBase Importance: Low Hi all, I'm a newbie to the world of Jython, and am already addicted to it. =20 Alas, I've hit one problem which has me stumpted and Google has been no=20 help. I have developed a GUI using Swing in eclipse and it works fine from=20 eclipse or by executing using the jython <filename> command. However=20 when I use jythonc to create a jar file for distribution, although no=20 problems are reported the resulting jar will not execute (I've tried Mac=20 OS X and Win XP - same result). I used the following command (a=20 different error occurs if I use --core rather than --all). jythonc --all --jar myjar.jar myjython.py (On Windows I had to add -C <javac path> - but the result is the same) Now my original version of my GUI worked no problem as a jar, since that=20 I've implemented a generic extension of the JMenu class that=20 automatically adds actionListeners and Keystrokes from a dictionary of=20 object references and specifc keystrokes and added a few more Swing=20 components. However the fact that it runs in Eclipse leads me to=20 believe that the new constructs I use are good and supported by Jython=20 as it would be in Python. I have also used an almost identical menu=20 subclass in another program I've written no problem. I've had a look at Jython's internal directory structure and the one=20 thing that has struck me is that the 'ast' directory contains no=20 build.xml file. I believe these are used for building with Ant, but I'm=20 out of my depth as far as my Java knowledge goes (I have a Python=20 background and a basic grounding in Java). I'm using Jython 2.2a1 and Java 1.5. I'm at my whits end with this, so any help or pointers would be greatly=20 appreicated - I can forward the code if needs be, but my own analysis=20 suggests the issue is elsewhere. Many thanks, Phil. $ java -jar test.jar Exception in thread "main" Traceback (innermost last): =20 File "/Users/philipbeadling/dev/GuiBuilder/jythonGui.py", line 0, in mai= n java.lang.NoClassDefFoundError: org/python/parser/ast/VisitorBase =20 at java.lang.ClassLoader.defineClass1(Native Method) =20 at java.lang.ClassLoader.defineClass(ClassLoader.java:620) =20 at=20 java.security.SecureClassLoader.defineClass(SecureClassLoader.java:124) =20 at java.net.URLClassLoader.defineClass(URLClassLoader.java:260) =20 at java.net.URLClassLoader.access$100(URLClassLoader.java:56) =20 at java.net.URLClassLoader$1.run(URLClassLoader.java:195) =20 at java.security.AccessController.doPrivileged(Native Method) =20 at java.net.URLClassLoader.findClass(URLClassLoader.java:188) =20 at java.lang.ClassLoader.loadClass(ClassLoader.java:306) =20 at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:268) =20 at java.lang.ClassLoader.loadClass(ClassLoader.java:251) =20 at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319) =20 at java.lang.ClassLoader.defineClass1(Native Method) =20 at java.lang.ClassLoader.defineClass(ClassLoader.java:620) =20 at=20 java.security.SecureClassLoader.defineClass(SecureClassLoader.java:124) =20 at java.net.URLClassLoader.defineClass(URLClassLoader.java:260) =20 at java.net.URLClassLoader.access$100(URLClassLoader.java:56) =20 at java.net.URLClassLoader$1.run(URLClassLoader.java:195) =20 at java.security.AccessController.doPrivileged(Native Method) =20 at java.net.URLClassLoader.findClass(URLClassLoader.java:188) =20 at java.lang.ClassLoader.loadClass(ClassLoader.java:306) =20 at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:268) =20 at java.lang.ClassLoader.loadClass(ClassLoader.java:251) =20 at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319) =20 at=20 org.python.compiler.ProxyMaker.addClassDictInit(ProxyMaker.java:742) =20 at org.python.compiler.ProxyMaker.build(ProxyMaker.java:782) =20 at org.python.core.MakeProxies.makeProxy(MakeProxies.java:76) =20 at org.python.core.PyClass.init(PyClass.java:128) =20 at org.python.core.PyClass.<init>(PyClass.java:84) =20 at org.python.core.Py.makeClass(Py.java:1562) =20 at org.python.core.Py.makeClass(Py.java:1484) =20 at jythonGui$_PyInner.main$20(jythonGui.java:495) =20 at jythonGui$_PyInner.call_function(jythonGui.java:205) =20 at org.python.core.PyTableCode.call(PyTableCode.java:213) =20 at org.python.core.PyCode.call(PyCode.java:14) =20 at org.python.core.imp.createFromCode(imp.java:191) =20 at org.python.core.Py.runMain(Py.java:856) =20 at jythonGui.main(jythonGui.java:552) java.lang.NoClassDefFoundError: java.lang.NoClassDefFoundError:=20 org/python/parser/ast/VisitorBase ------------------------------------------------------- This SF.Net email is sponsored by xPML, a groundbreaking scripting language that extends applications into web and mobile media. Attend the live webcast and join the prime developer group breaking into this new coding territory! http://sel.as-us.falkag.net/sel?cmd=3Dlnk&kid=3D110944&bid=3D241720&dat=3D12= 1642 _______________________________________________ Jython-users mailing list Jyt...@li... https://lists.sourceforge.net/lists/listinfo/jython-users --------------------------------------------------------------------------- The information contained in this message may be privileged and / or confidential and protected from disclosure. If the reader of this message is not the intended recipient, you are hereby notified that any dissemination, distribution or copying of this communication is strictly prohibited. If you have received this communication in error, please notify the sender immediately by replying to this message and deleting the material from any computer. --------------------------------------------------------------------------- |