2010-12-01 14 views
1

我真的很困惑 - 但真的很奇怪,因爲我知道兩種編程語言,但我不知道這樣簡單的事情... 我一直在尋找年齡,但我似乎無法得到我的圍着它轉。 你看,很長一段時間我一直在寫AutoIt,而且我已經寫了兩個程序,它很快就要上市了!雖然他們從未打算長期待下去(有點像Windows Vista),但最近我一直在學習Java,並取得了成功。我在經歷了Java教程的同時,在eclipse中寫了幾個非常非常簡單的應用程序!由於Java的跨平臺能力,我現在準備將我的程序轉移到Java,以獲得更廣泛的市場,但我從未想到分發將會變得如此複雜。 我遇到的第一個問題是在多個操作系統上的易用性:我不希望我的客戶必須處理JRE或多個文件,我需要一個可在MAC,Windows,Linux等平臺上工作的雙擊解決方案。這樣即使是完整的電腦新手也可以啓動我的軟件!其次,這不像我不知道該怎麼做的問題那麼嚴重。這包括我的軟件包中的某些文件需要保持與程序分離,但其他文件可能會被編譯,但實際上我認爲這可以由安裝程序解決 - 這可能會更容易!最後,我製作的另一個proram是獨立的,因此它可以在USB存儲棒上工作(現在是它的設計目的),現在,你如何做到這一點,以便它可以在沒有任何插入的情況下在多個操作系統上啓動Hasle城?如何分配我的Java應用程序以方便用戶使用?

更新::忘了補充::我擔憂的安全

我已閱讀並從個人的經驗,我知道:這是多麼容易反編譯一個.jar,如果有沒有保護的正確讀取源代碼!我知道混淆,我知道我會有法律支持,但它只是擔心我。即使從用戶的角度來看,我的軟件可能會首先出現錯誤。

所以在一個sentace(請閱讀上面仍然)得出結論: 我需要能夠讓人們通過雙擊例如使用我的軟件Java編寫像AutoIt中做出的東西 - 一個標準的應用即* .EXE

在此先感謝

回答

1

有你可以採取無需涉及任何額外的軟件兩條路線。

首先是做一個executable jar (Java Archive) file。在大多數系統上,Java自動將.jar擴展名與Java解釋器關聯。當你雙擊它時,JAR的manifest file會告訴它which class to launch

第二個不太推薦的路線是使用JNLP啓動程序文件製作Java Web Start應用程序。更多地針對從網站分發的應用程序。

+0

當然,在主機環境中仍然必須安裝JRE。 – FrustratedWithFormsDesigner 2010-12-01 18:51:26

+0

嗨,謝謝你的驚人的快速反應 - 非常appriciated。我之前閱讀過有關可執行jar文件的內容,而困擾我的是用戶必須安裝JRE!對於我的軟件所針對的人員來說,這可能是一個很大的困難,除非JRE可以自動安裝,而某些用戶可能不喜歡!另一件與我有關的事情是安全問題,我會/更新我原來的帖子來解釋; – Andy 2010-12-01 19:15:17

1

我會建議第三種方法:爲您的應用程序編寫多個特定於平臺的啓動腳本。例如,Windows的run.bat和Linux的run.sh。在每個腳本內部編寫一個命令來運行帶有所有必要參數的JRE。您還可以維護一些啓動前檢查(是否安裝了JRE)或此腳本中的一些特定於平臺的操作。

相關問題