06 6月 2013

[Sikuli] Compile Sikuli-IDE source code in Eclipse

Sikuli是新堀起的Programming Language,以圖象化的方式來coding真的是一大圖破創新的想法。重點是...還是台灣人做的呢!Sikuli是Open Source的,所以有不少人為這個Project供獻一己之力,最近公司的Project用它來做AutoTest,整個很給力,決定來compile它的source code來玩看看,雖然說很久沒寫Java了.... XD

Sikuli的Project切成兩部分,一個是整個核心的Sikuli-API是以Java、C++為主,另一個是開發平台的Sikuli-IDE是純Java的Project,由於整個核心API切出來成一個單獨的Project,所以如果想自己寫一個Java的程式直接使用Sikuli-API是可行的!詳見:How to use Sikuli Script in your Java Program?

也由於Sikuli API模組化的關係,目前Sikuli Script語法是Python,以後可能還會陸續支援其他語言吧。


1. 安裝Eclipse

Eclipse官網 - Download
安裝可以compile Java的Eclipse版本,應該都可以

2. 下載Sikuli Library

目前Sikuli版本是1.0.0,由於本篇介紹的是compile Sikuli-IDE,所以並不打算自己compile Sikuli-Script,可以直接下載已經release的版本即可

Sikuli Download Page
下載 Sikuli-IDE-1.0.0-Win32.zip後解壓縮
(其他還有Win64, Linux32/64, Mac的版本可載)
基本上,裡面即包含已經build好的sikuli-script.jar、以及其他開發所需要的Library

3. 建立Eclipse的Sikuli-IDE project

  1. File | New | Project 選擇 Java Project
  2. JRE 選擇JavaSE-1.6 (1.7應該也可以)
  3. Finish
  4. 點選 Project Property
  5. 進入 Project Property | Java Build Path | Libraries
  6. Add External JARs - 選擇"Step 2"裡下載解壓後所有的 *.jar 檔 (不包含sikuli-ide.jar)

4. 設定Environment

如果已經安裝過Sikuli安裝版的話,版本不要差太多的話,應該是可以不用設定
設定環境變數%SIKULI_HOME%%PATH% (只有Windows底下才需要設定%PATH%)
你可以選擇修改系統的環境變數,或是設定Eclipse Project的環境變數,設定Eclipse Project對環境似乎比較乾淨,以下簡單說明一下
  1. 點選進入Project Property
  2. 選擇 Project Property | Run/Debug Settings
  3. Edit你的Configurations,如果沒有的話,就New一個新的出來吧
  4. 進入 Edit Configurations | Environment
  5. New PATH := "Step 2"解壓縮後的裡面的libs目錄
  6. New SIKULI_HOME := "Step 2"解壓縮後的目錄

5. 下載 Sikuli-IDE source code

Sikuli-IDE github的網頁下載source code,可以選擇ZIP打包下載或是用git clone下來
將下載的source code加入至Eclipse的project裡
注意,Eclipse的source code root folder裡,要直接放i18n, icons, org, scripts這些fodler才行

6. Compile Sikuli-IDE source code

基本上,我是在Window上compile的,直接在Eclipse run的話會有error
需要將下列的一些檔案加入Exclusion list裡(如何將檔案加入Exclusion list)
  • org.sikuli.ide.NativeLayerForMac.java
  • org.sikuli.ide.z_notused.EditorDocument.java
  • org.sikuli.ide.z_notused.EditorView.java
最後,按下Run As Java Application,應該就可以看到Sikuli-IDE了!


Run起來的結果畫面,看到這個,代表就成功了!

Reference :

沒有留言: