Message7074
jython -m broken for scripts inside jar files
The workaround jython -c "import module; module.blah()" will work, but not if you don't have a blah function.
This is jy.bat
Version 2.5.2
C:\Working\working>java -classpath C:\Working\tools\maven\repository2\org\robotf
ramework\robotframework\2.7.1\robotframework-2.7.1.jar;C:\Working\tools\maven\re
pository2\tools\tools-core\1.3.1-SNAPSHOT\tools-core-1.3.1-SNAPSHOT.jar org.python
.util.jython
Jython 2.5.2 (Release_2_5_2:7206, Mar 2 2011, 23:12:06)
[Java HotSpot(TM) Client VM (Sun Microsystems Inc.)] on java1.6.0_26
Type "help", "copyright", "credits" or "license" for more information.
C:\Working\working>jy -m editor.vimgen
C:\Working\working>java -classpath C:\Working\tools\maven\repository2\org\robotf
ramework\robotframework\2.7.1\robotframework-2.7.1.jar;C:\Working\tools\maven\re
pository2\tools\tools-core\1.3.1-SNAPSHOT\tools-core-1.3.1-SNAPSHOT.jar org.python
.util.jython -m editor.vimgen
Traceback (most recent call last):
File "<string>", line 1, in <module>
File "C:\Working\tools\maven\repository2\org\robotframework\robotframework\2.7
.1\robotframework-2.7.1.jar\Lib\runpy.py", line 88, in run_module
AttributeError: 'ClasspathPyImporter' object has no attribute 'get_code'
C:\Working\working>jy -m editor/vimgen
C:\Working\working>java -classpath C:\Working\tools\maven\repository2\org\robotf
ramework\robotframework\2.7.1\robotframework-2.7.1.jar;C:\Working\tools\maven\re
pository2\tools\tools-core\1.3.1-SNAPSHOT\tools-core-1.3.1-SNAPSHOT.jar org.python
.util.jython -m editor/vimgen
Traceback (most recent call last):
File "<string>", line 1, in <module>
File "C:\Working\tools\maven\repository2\org\robotframework\robotframework\2.7
.1\robotframework-2.7.1.jar\Lib\runpy.py", line 88, in run_module
AttributeError: 'ClasspathPyImporter' object has no attribute 'get_code'
C:\Working\working>jy -m editor/blah
Looking at the source it seems that ClasspathPyImporter is indeed lacking this method.
No such module is a different, correct error:
C:\Working\working>java -classpath C:\Working\tools\maven\repository2\org\robotf
ramework\robotframework\2.7.1\robotframework-2.7.1.jar;C:\Working\tools\maven\re
pository2\tools\tools-core\1.3.1-SNAPSHOT\tools-core-1.3.1-SNAPSHOT.jar org.python
.util.jython -m editor/blah
Traceback (most recent call last):
File "<string>", line 1, in <module>
File "C:\Working\tools\maven\repository2\org\robotframework\robotframework\2.7
.1\robotframework-2.7.1.jar\Lib\runpy.py", line 87, in run_module
ImportError: No module named editor/blah
Still present under the latest beta release
C:\Working\working>jy -m editor/vimgen
C:\Working\working>rem set JYTHON=C:\Working\tools\maven\repository2\org\robotfr
amework\robotframework\2.7.1\robotframework-2.7.1.jar
C:\Working\working>set JYTHON=C:\Working\tools\jython\jython2.5.3b1\jython.jar
C:\Working\working>java -classpath C:\Working\tools\jython\jython2.5.3b1\jython.
jar;C:\Working\tools\maven\repository2\tools\tools-core\1.3.1-SNAPSHOT\tools-core-
1.3.1-SNAPSHOT.jar org.python.util.jython -m editor/vimgen
Traceback (most recent call last):
File "<string>", line 1, in <module>
File "C:\Working\tools\jython\jython2.5.3b1\Lib\runpy.py", line 88, in run_mod
ule
code = loader.get_code(mod_name)
AttributeError: 'ClasspathPyImporter' object has no attribute 'get_code'
Works for local scripts
C:\Working\working>dir *.py
Volume in drive C has no label.
Volume Serial Number is 7402-3955
Directory of C:\Working\working
04/30/2012 11:11 AM 15 test.py
1 File(s) 15 bytes
0 Dir(s) 208,984,723,456 bytes free
C:\Working\working>jy -m test
C:\Working\working>rem set JYTHON=C:\Working\tools\maven\repository2\org\robotfr
amework\robotframework\2.7.1\robotframework-2.7.1.jar
C:\Working\working>set JYTHON=C:\Working\tools\jython\jython2.5.3b1\jython.jar
C:\Working\working>java -classpath C:\Working\tools\jython\jython2.5.3b1\jython.
jar;C:\Working\tools\maven\repository2\tools\tools-core\1.3.1-SNAPSHOT\tools-core-
1.3.1-SNAPSHOT.jar org.python.util.jython -m test
test.py
This is jy.bat just to show there is nothing weird there. Jython 2.5.2 was the version disted with the robot framework.
rem set JYTHON=%M2_REPO%\org\robotframework\robotframework\2.7.1\robotframework-
2.7.1.jar
set JYTHON=C:\Working\tools\jython\jython2.5.3b1\jython.jar
java -classpath %JYTHON%;%M2_REPO%\ets\tools-core\1.3.1-SNAPSHOT\tools-core-1.3.
1-SNAPSHOT.jar org.python.util.jython %1 %2 %3 |
|
Date |
User |
Action |
Args |
2012-04-30 08:37:52 | conflatedauto | set | recipients:
+ conflatedauto |
2012-04-30 08:37:52 | conflatedauto | set | messageid: <1335775072.83.0.363836574489.issue1879@psf.upfronthosting.co.za> |
2012-04-30 08:37:52 | conflatedauto | link | issue1879 messages |
2012-04-30 08:37:52 | conflatedauto | create | |
|