Запуск 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()
Другие вопросы по тегам