From: Paul G. <pau...@so...> - 2001-05-18 07:17:56
|
I used to get the warining 'import exceptions' failed; using string-based exceptions every time I ran a jpython application that was staticly compiled into Java code. It stopped when I explicitly added the module exceptions.py. It seems that this module is not explicitly imported anywhere, but at some point the jpython tries to dynamicly load this module an issues the warning if the attempt fails. Since it is not statically imported anywhere, it does not automaitcally get included in a 'freeze', even if you specify the --deep option to jpythonc. If you compile $PYTHON_HOME/Lib/exceptions.py into java bytecode and include it in your classpath, this will probably make the problem go away. I have only done this with jpython1.1, but ifyou are having this problem with jython2.x, then I imagine that is it the same issue. Below is a segemnt of my ANT config file that we use to statically compile a piece of JPYthon code called servermon.py. Note that "${tool.jpython}/Lib/exceptions.py" is explicitly added on the second to last line. It my help for reference (even though you are probably not using jythonc). <property name="python.home" value="${tool.jpython}"/> <java classname="org.python.util.jpython" fork="yes" classpath="${classpath.compile.adminapi}:${tool.jpython}\jpython.jar" args="${tool.jpython}/Tools/jpythonc2/jpythonc.py --deep --package ch.softwired.msrv.tools.servermon --workdir ${build.src.java} --compiler NONE ${src.python}/ch/softwired/msrv/tools/servermon/servermon.py ${tool.jpython}/Lib/exceptions.py " > </java> Hope this helps. -Paul > Message: 2 > Date: 14 May 2001 09:35:27 -0700 > To: jyt...@li... > From: xn...@sp... > Subject: [Jython-users] InteractiveConsole question > > I have a class that extends InteractiveConsole. > I'm using it to pass administrative commands > to my Java codebase. > > Everything works great except this: > > I get - > 'import exceptions' failed; using string-based exceptions > > this message even though my command does get > passed to my admin framework. > > How do I suppress the above ?? any ideas ?? > > I tried setting using setOut and setErr methods > to some temp file, but that did not help. > > -thanks, > neo > |