PCDVD數位科技討論區

PCDVD數位科技討論區 (https://www.pcdvd.com.tw/index.php)
-   七嘴八舌異言堂 (https://www.pcdvd.com.tw/forumdisplay.php?f=12)
-   -   有沒有JAVA高手可以請教一下.. (https://www.pcdvd.com.tw/showthread.php?t=1070186)

打工吧魔王大人 2015-02-09 11:15 PM

引自爬文:

--------
Java 轉 EXE有兩種模式 ,
(1)
一種是把原來的程式(class)用一層殼包起來 ,但是這樣的EXE檔無法獨立複製到其他的機器上去執行 , 因為它的底層仍然要透過JRE(JDK)去執行
(JBuilder 產生的就是此類 , 如果要測試可以將JBuilder產出的EXE直接複製到另一台乾淨沒有安裝任何JRE或JDK的機器上去測試就知道了)

(2)
將Java Source 直接編譯成特定平台上的執行檔(Windows , Linux , AIX)
需要的是GCJ , 不過它似乎針對 SWING的部分不是那麼支援 , 所以一般會建議使用SWT來做GUI的視窗程式 ,
而且針對 JDK的API 支援度不是那麼快(有些JDK 1.4的API應該是還沒時做才是)
當然編譯成特定平台的執行檔後 , 就沒有所謂的可攜性了...

csshih 2015-02-09 11:18 PM

引用:
作者打工吧魔王大人
嗯?
我的老舊Eclipse 還是怪怪的, 照理說生成 xxx.jar 後可以拿到 XP dos box 下使用 java -jar blabla.jar 來執行(爬文查到的訊息).. 但是怪怪的不能用, eclipse 包了不完整的東西, 且不知要如何執行..



它比較像古董basic ? 在檢查完語法,在IDE跑過可以跑以後, 可以拿到其他機器上(XP VM ? 直譯器? ) 執行 , 只是我失敗了.


照我的分類, 它生成的東西比較不像是編譯過的東西..只是包成另一種型式(xxx.class ?),

我剛才把xxx. jar用RAR解開看了一下所以....


jar本來就是一種打包.....
你用ZIP或TAR打開就是一堆同一package的class :flash:

csshih 2015-02-09 11:21 PM

引用:
作者打工吧魔王大人
引自爬文:

--------
Java 轉 EXE有兩種模式 ,
(1)
一種是把原來的程式(class)用一層殼包起來 ,但是這樣的EXE檔無法獨立複製到其他的機器上去執行 , 因為它的底層仍然要透過JRE(JDK)去執行
(JBuilder 產生的就是此類 , 如果要測試可以將JBuilder產出的EXE直接複製到另一台乾淨沒有安裝任何JRE或JDK的機器上去測試就知道了)

(2)
將Java Source 直接編譯成特定平台上的執行檔(Windows , Linux , AIX)
需要的是GCJ , 不過它似乎針對 SWING的部分不是那麼支援 , 所以一般會建議使用SWT來做GUI的視窗程式 ,
而且針對 JDK的API 支援度不是那麼快(有些JDK 1.4的API應該是還沒時做才是)
當然編譯成特定平台的執行檔後 , 就沒有所謂的可攜性了...


http://www.javaworld.com.tw/jute/po...id=125470&sty=2
包一包就是EXE
可以請教您為何要包成EXE :confused:
要包成EXE的人多數都是想弄成windows服務
那你需要的是Java service wrapper

erai 2015-02-09 11:30 PM

引用:
作者打工吧魔王大人
嗯?
我的老舊Eclipse 還是怪怪的, 照理說生成 xxx.jar 後可以拿到 XP dos box 下使用 java -jar blabla.jar 來執行(爬文查到的訊息).. 但是怪怪的不能用, eclipse 包了不完整的東西, 且不知要如何執行..



它比較像古董basic ? 在檢查完語法,在IDE跑過可以跑以後, 可以拿到其他機器上(XP VM ? 直譯器? ) 執行 , 只是我失敗了.


照我的分類, 它生成的東西比較不像是編譯過的東西..只是包成另一種型式(xxx.class ?),

我剛才把xxx. jar用RAR解開看了一下所以....

執行環境的Java版本也要注意

在eclipse用1.8的規格包成jar檔,拿到JRE1.6的環境是跑不起來的。

另外包成jar檔時,沒有把額外引用的lib包進去,或是一起copy到執行環境,也是跑不起來的。

打工吧魔王大人 2015-02-10 12:37 AM

問題初步解決, :)


eclipse 打包的東西可以在xp 用 java -jar xxxx.jar 來執行, 無誤.



接下來修行就靠自己了,放飛.

謝謝 harrisonlin , 記憶我的RDesign, tommy84566, darkangel ,harrisonlin , DeepGreen, erai , csshih , harrisonlin ,


... 阿還有那個用輪胎皮在柏油路寫code 的大濕, 應該也很強吧只是不想露一手. :D

打工吧魔王大人 2015-02-13 04:01 PM

剛才遇到.js , 於是爬文:
--------
JavaScript是一種腳本語言,其原始碼在發往客户端執行之前不需經過編譯,而是將文本格式的字符代碼發送給瀏覽器由瀏覽器解釋執行。直譯語言的弱點是安全性較差,而且在JavaScript中,如果一條執行不了,那麼下面的語言也無法執行。而其解決辦法就是於使用try{}catch(){}︰

打工吧魔王大人 2015-02-24 10:45 AM

新年快樂.

我遇到一些進階問題,
我的workspace 有開數個project , 各自可以獨立執行(Run as java application).
我想弄一個有極簡UI 的APK (已有text input與 ok button 能動, 有灌 android avd , 可在模擬器下跑), 但要把先前的project 加進來(不是很大,約莫幾千行, 有固定的import 該project的 class).





所以我在環境設定部份卡關了..

現況是package explorer 有好幾個無驚嘆號的 project . 加一個剛從android developers 練好的project (有一行text input & OK 紐), 但先前project的 import 加過來MainActivity.java並不能正常ref.
先前的數個project 也都各自 import 自己那包自行開發的class .




可以請高手提供線索指導一下嘛?


謝謝.

harrisonlin 2015-02-24 11:25 AM

所以是一個Android的project要參考到其它沒有問題的project?

還是一樣先看一下,"Problem" panel,還有就是在"Project Explorer"裡,有問題的project(也就是那個android project?)上右鍵->Build Path->Configurate Build Path,看看"Project"那個頁籤有沒有你想加進來的project.

打工吧魔王大人 2015-02-24 12:04 PM

引用:
作者harrisonlin
所以是一個Android的project要參考到其它沒有問題的project?

還是一樣先看一下,"Problem" panel,還有就是在"Project Explorer"裡,有問題的project(也就是那個android project?)上右鍵->Build Path->Configurate Build Path,看看"Project"那個頁籤有沒有你想加進來的project.



報告,
目前大致是這樣, project ABC 可以獨立運作, project D (abc_app)引用了project ABC,也是可以運作.
(與 ABC 同組的F,G (UI.core) 不能用, 貌似少好多東西, 反正也不想用)



旁邊自開的android Project E, 打算把 project D 的 Example.java 抄來用,
其中 Project ABCD 都無關於 GUI 顯示.
所以我在想應該把project D 的環境抄一份來 E,..... ,但是有的就是長不出來. 正在研究中.



有進度會在上來回報. Thanks .

打工吧魔王大人 2015-02-24 12:24 PM

目標先把從 D copy 來的 (import 那幾行) 的問題消掉. ,
再把code 塞進來.. 這樣應該是正確 ?


所有的時間均為GMT +8。 現在的時間是04:38 AM.

vBulletin Version 3.0.1
powered_by_vbulletin 2025。