From: Johan V. N. <jo...@qo...> - 2014-10-15 16:43:22
|
Guys, Sorry to say that I’m stuck… Summary of the issue of this thread: since revision 7332 added the automatic loading of site.py, I can’t create a ScriptEngine anymore. Trial 1: debugging I was tracing into the Jython code and I see that imp.class is trying to load site.py. That seems to work fine, since I see it then loading so.py and stat.py and so on, which is to be expected because they are the ones required by site.py. At the end, it does seem to fail on the site.py anyway (RuntimeException in imp.createFromCode) and I don’t understand why. My Python / Jython knowledge is getting to its limits here… Trial 2: small test program to verify whether I can import anything at all. I tried also to execute (in my OSGi test program): >>> import hashlib null >>> m = hashlib.md5() null >>> m.update('Nobody inspects') null >>> m.update(' the spammish repetition') null >>> m.hexdigest() bb649c83dd1ea5c9d9dec9a18df0ffe9 >>> import site And then an exception is raised (ImportError: No module named sysconfig in <script> at line number 1) File "<script>", line 1, in <module> File "__pyclasspath__/site.py", line 563, in <module> File "__pyclasspath__/site.py", line 545, in main File "__pyclasspath__/site.py", line 278, in addusersitepackages File "__pyclasspath__/site.py", line 253, in getusersitepackages File "__pyclasspath__/site.py", line 242, in getuserbase The fact that I can import hashlib seems to prove that I can correctly import modules. The site.py doesn’t load anyway. Any issue with this file? Trial 3: small test, other python libs Please note: For this example I’m using the libraries from jython\lib-python\2.7. This is a different set from jython\Lib. What’s the difference? Anyway, when trying jython\Lib, it seems hashlib is not available. I then just imported gzip. Seems to find and load gzip, but while doing so it gets stuck on stat.py. (. . .) Caused by: javax.script.ScriptException: ImportError: No module named stat in <script> at line number 1 at org.python.jsr223.PyScriptEngine.scriptException(PyScriptEngine.java:202) at org.python.jsr223.PyScriptEngine.eval(PyScriptEngine.java:42) at org.python.jsr223.PyScriptEngine.eval(PyScriptEngine.java:31) at testjythonosgi.Activator.exec(Activator.java:55) at testjythonosgi.Activator.start(Activator.java:48) at org.eclipse.osgi.framework.internal.core.BundleContextImpl$1.run(BundleContextImpl.java:711) at java.security.AccessController.doPrivileged(Native Method) at org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:702) ... 12 more Caused by: Traceback (most recent call last): File "<script>", line 1, in <module> File "__pyclasspath__/gzip.py", line 8, in <module> File "__pyclasspath__/os.py", line 64, in <module> File "__pyclasspath__/ntpath.py", line 10, in <module> ImportError: No module named stat Getting fully confused now ☹ Johan |