从命令行运行SikuliX 1.1.4 Python脚本

问题描述 投票:0回答:1

我有一些与Sikulix一起运行的Python(实际上是jython)脚本。

我之前使用的是1.1.1版,并且正在使用命令行(在完成设置之后):

java -Dsikuli.Debug=-2 -cp sikulix.jar org.python.util.jython main.py

对于1.1.4版本,没有更多设置,并且已从sikulix.jar和sikulixapi.jar中删除了jython。 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

文档未完全更新如何执行。他们提到jythonjip和其他东西的安装,但没有设法工作。

有什么想法怎么做?

谢谢

== == 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。

python jython sikuli sikuli-script sikuli-x
1个回答
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()
© www.soinside.com 2019 - 2024. All rights reserved.