差異處
這裏顯示兩個版本的差異處。
下次修改 | 前次修改 | ||
java:installanywhere:installer_without_jvm [2017/01/05 11:53] tony 建立 |
java:installanywhere:installer_without_jvm [2023/06/25 09:48] (目前版本) |
||
---|---|---|---|
行 2: | 行 2: | ||
====== Without VM的Installer ====== | ====== Without VM的Installer ====== | ||
===== Problem ===== | ===== Problem ===== | ||
- | 把JVM和軟體包一起發布,是將side effect降到最低的方法。然而,Oracle打算開始追討授權費,也讓我們開始思考該怎麼發布軟體。 | + | 把JVM和軟體包一起發布,是將side effect降到最低的方法。然而,Oracle打算開始追討授權費,也讓我們開始思考該怎麼發布軟體。如果用使用者安裝的Sun JVM是否能解決問題呢? 這我們不曉得;而另外一條路就是OpenJDK。然而OpenJDK的授權,也難以直接包裝於企業用軟體。因此還是要回歸到如何不包裝JVM,但安裝時有JVM可用的問題。 |
+ | ===== How to? ===== | ||
+ | 在InstallerAnywhere 2015 build tab中,可以看到VM Search Instructions設定。其中Without VM包含了搜尋現有與線上下載兩種模式:\\ | ||
+ | {{:java:installanywhere:ia_build_without_vm_options.png|}} | ||
+ | ==== Download from URL ==== | ||
+ | 如上圖所示,你必須輸入一個URL,它可以是http也可以是ftp,但請確定server允許匿名存取;md5 hash驗證就看你是否需要,我是使用HashMyFiles去取得md5 hash值。實際執行build installer,從http下載結果:\\ | ||
+ | {{:java:installanywhere:ia_download_jvm_with_md5_verify.png|}}\\ | ||
+ | \\ | ||
+ | 從ftp下載結果:\\ | ||
+ | {{:java:installanywhere:ia_download_jvm_using_ftp.png|}}\\ | ||
+ | \\ | ||
+ | 不管是下載失敗或md5驗證沒通過,安裝最後都會結束。 | ||
+ | ==== Search for VM ==== | ||
+ | 首先可以從user guide的Locations on a Target System that Are Searched for JVMs中得知: | ||
+ | - Windows搜尋%PATH%與Registry。 | ||
+ | - Unix搜尋$PATH與某些固定放command line的路徑。 | ||
+ | (下圖來自[[https://www.microway.com.au/installshield/InstallAnywhere2015_UserGuide.pdf|IA 2015 user guide]])\\ | ||
+ | {{:java:installanywhere:ia_laucher_search_path.png|}}\\ | ||
+ | \\ | ||
+ | 如果你所需要的JVM為1.8以上,可以到Project > JVM Settings中,做如下圖的設定: \\ | ||
+ | {{:java:installanywhere:ia_vm_restriction.png|}} | ||
===== Reference ===== | ===== Reference ===== | ||
* [[http://technews.tw/2016/12/20/oracle-finally-targets-java-non-payers/|Oracle 開始追討 Java 授權費,企業客戶頭痛]] | * [[http://technews.tw/2016/12/20/oracle-finally-targets-java-non-payers/|Oracle 開始追討 Java 授權費,企業客戶頭痛]] | ||
- | + | * [[https://www.microway.com.au/installshield/InstallAnywhere2015_UserGuide.pdf|InstallAnywhere2015 UserGuide]] | |
+ | * [[https://briian.com/6457/|MD5、SHA1、CRC32 驗證碼檢測工具-HashMyFiles v2.21]] | ||
+ | ===== 其它 ===== | ||
+ | 以上方式只是告訴你在使用without VM去build installer後,當installer執行時獲得JVM的方法。然而在轉換這種方法後,installer是否會有其它side effect,就需要自行測試。畢竟user的環境是複雜滴~\\ | ||
+ | \\ | ||
+ | 舉例來說,使用現有的jvm後,如果你的installer內原本會透過$lax.user.dir$$/$resource$/$jre$/$bin$/$java的方式去執行某些動作,就會有問題;如果用下載的就不會有問題。面對這問題,可以把java執行路徑改為: | ||
+ | <code java> | ||
+ | # 以linux為例 | ||
+ | # $prop.JAVA_PROPERTY$ 代表要透過InstallAnywhere取得java properties | ||
+ | $prop.java.home$$/$bin$/$java -version | ||
+ | </code> | ||
+ | ===== ===== | ||
+ | ---- | ||
+ | \\ | ||
+ | ~~DISQUS~~ | ||