Запуск SikuliX 1.1.4 скриптов Python из командной строки
У меня есть немного питона (jython
на самом деле) скрипты, которые работают с Sikulix.
Ранее я использовал версию 1.1.1 и командную строку (после установки):
java -Dsikuli.Debug=-2 -cp sikulix.jar org.python.util.jython main.py
С версией 1.1.4 больше нет настроек, и jython
был удален из sikulix.jar и sikulixapi.jar. 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)
Я установил Jython с 32-битной Java, и кажется, что требуется 64-битная Java.
Я, вероятно, попробую еще раз с 64-битным Java JDK.
1 ответ
Добавьте следующую строку в начале вашего скрипта
import org.sikuli.script.SikulixForJython
Это поможет искать sikuli
модуль в классах Java.
Затем вы можете запустить с командной строкой, упомянутой ранее:
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()