今回は環境構築のみですが、初めてで手間取ったところもあったので、
メモ代わりに書いておきます。
まず、セットアップにあたってはmasuoさんの下記ブログ記事を参考にしました。
Sikuli 入手方法とセットアップ方法 : masuoのブログ
SikuliXって何?っていう方はmasuoさんのブログの以下のエントリーを見てみてください。
SikuliをRPAに使う-[1]はじめに : masuoのブログ
英語ですが現在の開発者のRaiManさんのページも分かりやすいです。
RaiMan's SikuliX
試した環境
Windows 10 Home 64bit
Surface Pro 6 (Intel Core i5, 8GB RAM)
手順
基本的にインストール作業は以下の3つのみで、非常にシンプルです。
1. Java SDKをインストール
2. SikuliX本体をインストール
3. Jythonをインストール
今回使ったもの
-
Java SDK
今回はmasuoさんのご紹介でAmazon Correttoを使用。
Amazon Corretto(本番環境に対応したOpenJDKディストリビューション)| AWS -
SikuliX本体
今回はSikuliX 2.0.2を使用。ダウンロードは以下ページのリンクより。
RaiMan's SikuliX -
Jythonをダウンロード
こちらも上記のダウンロードページから落とせます。
実際にやってみる
1. Java SDK(Amazon Corretto)をインストール
上記、Amazonのページからダウンロードしてインストーラーを実行するだけ。
Windows x64用のJDKでmsi形式のファイルを落としました。
当初ver8をインストールしましたが、SurfaceですとSikuliXの表示が非常に小さくなったので、
ver11を入れなおしました。
2. SikuliX本体をインストール
これはインストーラー等不要でC:ドライブ直下などに適当なフォルダを入れておいて、
.jarファイルをそこに置くだけでOK。
3. Jythonをインストール
こちらもインストーラーはないですが、Sikulixの.jarファイルと同じ場所にJythonの.jarファイルを入れておけば、SikuliX起動時に所定のフォルダに自動で移動されます。
手順としては、以下のとおり。
・SikuliXを起動(sikulix-2.0.2.jarをダブルクリック)
・下記フォルダにJythonの.jarファイルが自動的に移動されます。
C:\Users\ユーザー名\AppData\Roaming\Sikulix\Extensions
これでセットアップはおしまい!!
インストールに発生したトラブルとその対策
SurfaceだとSikuliXがとても小さく表示されてしまう
Surfaceはいわゆる高DPIディスプレイを搭載したPCで、よくこういうトラブルに見舞われます。
普通のWindowsアプリですと、互換性の設定をいじれば対処できるのですが、Javaのアプリの場合はそうもいかないようです。
今回はJDK ver11だと高DPIデバイスに対応できると聞いたので、Corretto 11を入れてみました。
ただ、SikuliXが正式対応していない可能性があるため、ちゃんと動作するか今後試していきたいと思います。
Corretto 8をアンインストールしてCoretto 11を入れなおしたら、SikuliXが動かなくなった
.jarファイルをどのアプリケーションで開くか、というWindowsに対しての登録が外れていました。
「アプリケーションで開く」で、javaw.exeを指定してもダメだったので、ググったところ、レジストリの修正が必要と判り、直しました。
具体的には、
コンピューター\HKEY_CLASSES_ROOT\Applications\javaw.exe\shell\open\command
の値が下記のようになっていましたが、
"C:\Program Files\Amazon Corretto\jdk11.0.3_7\bin\javaw.exe" "%1"
以下のように修正したら動くようになりました。
"C:\Program Files\Amazon Corretto\jdk11.0.3_7\bin\javaw.exe" -jar "%1"
まとめ
インストール手順自体は必要なファイルも3つほどで、とてもシンプルでした。
ただ、Surface特有の問題や、それに伴ってJavaアプリあるある的なひっかかる点がありましたので、この記事にまとめてみました。
Java 11でSikuliXがちゃんと動くかどうかは、これから使ってみて確かめていきたいと思います。