讓 SWT Class 封裝出來的 JAR 檔可以直接滑鼠擊點兩下就執行,試了好久,終於 … 這篇文章記錄讓 SWT Class 封裝成可以直接點兩下就執行的 JAR file (eclipse fat-jar plug-in),並且把它轉成 EXE file (JSmooth)。
● 安裝 eclipse fat-jar 外掛
1. 下載 fat-jar plug-in。下載頁面。
2. 解壓縮下載回來的檔案,得到 net.sf.fjep.fatjar_0.0.31.jar,把這個檔案附置到 eclipse 安裝目錄下的 plugins 目錄裡。
3. 開啟 eclipse,在專案上按滑鼠右鍵,出現 Build Fat Jar 表示安裝完成。
● 用 fat-jar 產生 JAR file
- 要產生可以直接執行的 JAR file,必須要一併封裝比較新版本的 swt,這邊我們使用 3.4 final release 版本,3.4 把一些必須的 dll 檔都包含在 jar file 裡面。下載頁面。
- 下載完後,隨便解壓縮到一個資料夾就可以了。接著在專案上點選滑鼠右鍵,選擇新增外部保存檔。
- 選擇剛剛解壓縮完的資料夾,裡面有個 swt.jar,按下開啟舊檔。
- 在 eclipse 左側看到已經引入外部套件。
- 在專案上點滑鼠右鍵,接著選擇 Build Fat Jar。
- 更改 Jar-Name,並選擇 Main-Class,點選下一步。
- 使用我們剛導入的 swt.jar 並且取消原本版本較舊的 swt。
- 按下完成後,就可以在專案的資料夾裡找到剛剛建立的 test-fat.jar。
- 滑鼠擊點兩下,可以正確執行。
</span>
● **將 JAR 轉成 EXE**
- 下載並安裝 JSmooth。下載頁面。
- 執行 JSmooth,Skeleton 這裡選擇 Autodownload Wrapper,為的是讓沒有 JVM 環境的使用者,能夠自動下載 JVM。
- Executable 選擇要輸出的 exe file 路徑跟檔名(一定要記得附檔名是 .exe),要使用的 icon,最下面路徑的部分可以直接打勾。
- Application 頁面,先把 Use an embedded jar 打勾,接著選擇剛剛建立的 test_fat.jar,Classpath 選擇新版的 swt.jar,最後上面的 Main class 就可以直接選擇不用自己輸入。
- 點選工具列的齒輪圖案,會要求在 compile 之前先儲存專案,隨便輸入吧。
- 按下儲存後,開始編譯動作。
- 編譯完成後,可以看到剛剛輸出 exe file 的地方產生了一個 exe file。
- 擊點兩下 exe file,成功。
</span>