我有一些与Sikulix一起运行的Python(实际上是jython
)脚本。
我以前使用的版本是 1.1.1 ,并且正在使用命令行(在完成设置之后):
java -Dsikuli.Debug=-2 -cp sikulix.jar org.python.util.jython main.py
在版本 1.1.4 中,没有更多设置,并且jython
已从 sikulix.jar 和 sikulixapi.jar < / em>。 Jython在另一个jar文件中( jython-standalone-2.7.1.jar )。
我尝试使用以下命令行运行
java -Dsikuli.Debug=-2 -cp "sikulix.jar;jython-standalone-2.7.1.jar" org.python.util.jython main.py
但是我收到以下错误
Traceback (most recent call last):
File "test.py", line 3, in <module>
from sikuli.Sikuli import *
ImportError: No module named sikuli
该文档尚未完全更新。他们提到安装jython
,jip
和其他东西,但没有任何工作。
有什么想法吗?
谢谢
== PS == :
执行以下操作后几乎可以正常工作:
jython
CLASSPATH
设置为 sikulixapi.jar jython main.py
我遇到以下错误:
[error] RunTimeINIT: *** terminating: Java arch not 64 Bit or not detected (java 8-32 version 1.8 vm 25.121-b13 class 52.0 arch null)
我已经用32位Java安装了Jython,看来需要64位Java。
我可能会尝试使用64位Java JDK。
答案 0 :(得分:1)
在脚本的开头添加以下行
import org.sikuli.script.SikulixForJython
这将有助于在Java类中寻找sikuli
模块。
然后可以使用前面提到的命令行运行:
java -cp "sikulixapi.jar;jython-standalone-2.7.1.jar" org.python.util.jython main.py
Python脚本示例(main.py):
import org.sikuli.script.SikulixForJython
from sikuli.Sikuli import *
notepad = App('notepad.exe')
notepad.open()
sleep(1)
type("It is working!")
notepad.close()