X 1.0rc1: Windows: import Jython module subprocess not possible - workaround
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
SikuliX |
In Progress
|
Medium
|
RaiMan |
Bug Description
*** If you face problems like the one below (standard python modules cannot be imported) try this workaround:
--- copy sikuli-script.jar from the Sikuli X program folder to e.g. c:\ (or another place were the resulting absolute path does not contain any blanks)
and modify the .bat in the Sikuli X program folder:
--- remove the PATH= statement, it is not needed, you have it (to be checked!) already in your system path ;-)
--- set the python.path option to: -Dpython.
the changed line should read (based on the distributed version, sikuli-script.jar copied to c:\):
%JAVA_EXE% -Xms64M -Xmx512M -Dfile.
run this .bat to start the IDE, and you hopefully find, that your imports work.
Comment for NetBeans (and Eclipse) users:
If you are using the Python plugin configured with Jython 2.5.1, you will not have this problems.
Background: Jython 2.5.1 seems to have problems with some import handling of/in python modules/packages contained in .jar files whose absolute path contains blanks.
-------
The following code worked perfectly in Sikuli 10, within the IDE and in Netbeans on all Windows operating systems. Now it fails globally. Any code invoking subprocess fails on all windows operating systems, repeat ALL Windows operating systems. This failure occurs on user systems where the .jar files are not changed, unpacked nor run from NetBeans.
import glob
import os
import subprocess
setShowActions(
dirname = "Z:\BUILDS\
setBundlePath(
filespec = "setup.exe"
instlpath = glob.glob (os.path.join (dirname, filespec))
subprocess.call (instlpath[0] + ' /S /z" ')
if exists(
popup("Install Successful")
exit()
Error:
[debug] close all ScreenHighlighter
[info] Stopped
[info] An error occurs at line 3
[info] Error message:
Traceback (most recent call last):
File "C:\Users\
import subprocess
File "C:\Program Files (x86)\Sikuli X\sikuli-
File "C:\Program Files (x86)\Sikuli X\sikuli-
File "C:\Program Files (x86)\Sikuli X\sikuli-
File "C:\Program Files (x86)\Sikuli X\sikuli-
IndexError: index out of range: 0
summary: |
- Sikuli can't import subprocess, all scripts using subprocess are broken + X 1.0rc1: Windows: import Jython module subprocess not possible |
description: | updated |
description: | updated |
Changed in sikuli: | |
status: | New → In Progress |
importance: | Undecided → Medium |
assignee: | nobody → RaiMan (raimund-hocke) |
tags: | added: jython |
Windows 7 confirmed:
simply "import subprocess" in Sikuli- X IDE brings the above error.
This works for me: running a Sikuli script in NetBeans using the Jython 2.5.1, that comes with the PyDev plugin.
Seems to be "some whatever" in the Sikuli X scriptrunner context together with the packaged Jython