2009年3月21日 星期六

Java 的 package

Java 的程式碼有一個和 C++ namespace 很像的東西,叫作 package。不過和 namespace 不一樣的是一份程式碼只能有一個 package 指令,所以也只能屬於一個 package。

在寫程式的時候,如果要測試,請下以下的指令:

javac YourClass.java -d .

最後的 -d 是要 javac 自動把 class file 放到以 -d 為根目錄而對映的資料夾之中。如果用 . 當作參數,就是以原始碼所在的目錄為根目錄。我們的 java 的 package 指令是長這樣:

package test;

那產生出來的 class file 會放在 ./test/YourClass.class。注意,如果執行 javac 的時候,沒有加上 -d . 那,class file 不論 package 指令怎麼定義,就只會放在和原始碼相同的目錄。

如果要執行這一個 class ,就直接下

java test.YourClass

就可以了。注意,如果在 javac 沒有加上 -d . 的話,無論 java test.YourClass 或 java YourClass 都找不到你的 class。

最近正在學 Java,為文記之。

2009年3月13日 星期五

Exim4 與 Gmail

因為我想要寫一個程式來自動備份我的程式碼到 Gmail,所以我要能夠用 SMTP 把我的文字檔寄到我電子信箱的指令。

我一開始用了 mail,這一個指令是我在上計概的時候學到的。我稍微查了一下,mail 這一個指令是屬於 mailutils 這一個 package 的程式。於是我就興沖沖地把下面的指令打下去

sudo aptitude install mailutils

經過一陣安裝之後,我很高興地下了下面的指令來做測試。

mail -s "Test Subject" email.address@gmail.com << context

可是,我收信收了好久,都等不到,之後我開始亂玩,卻發現以下的錯誤訊息:
Mailing to remote domains not supported

這到底是怎麼一回事?我百思不解,我不過是想要寄一封信,怎麼這麼困難?經過一番 Google 之後,我才知道要跑 sudo dpkg-reconfigure exim4-config。

跑完之後,就跟著這一篇〈Using Exim4 to send Messages through GMail〉去設定就可以用 mail 透過 SMTP 來寄信了。

2009年3月11日 星期三

Enlightenment Foundation Library

昨天晚上我去 TOSSUG 的聚會,去聽 WalkingIce 前輩對 Enlightenment Foundation Library 的介紹。介紹的主題有 Enlightenment 17/EFL 的現況,以及昨晚的重頭戲:EDJE,一個把 UI 和 Coding Logic 完全切割的設計。

看完介紹之後,對 Enlightenment Foundation Library 有一點心動。在很多方面 EFL 的設計都很前衛,感覺起來在技術上領先大多數我所知道的 Library,這也是在 1996 釋出的 Enlightenment 16 會讓人有 2003 年的感覺吧!(當然以現在的角度來看 E16 還算普通,可是回想一下 Windows 98 你就會知道在 1996 年 E16 是多麼的先進)

不過要用 EFL 還有一個大問題:他目前還是處於大量的開發階段,Commit 的次數仍然很多,API 也還不是很穩定,當然也不會有現成的 Debian Package,一定要從頭自己 build,這一點有一點麻煩,尤其是對我這種懶人而言。

不過如果有空,我一定會去玩玩看的!

2009年3月3日 星期二

又感冒了

上星期四晚上,睡覺前,很熱,所以我開電風扇睡覺,結果隔天被冷起床,附加喉嚨痛。本來以為是過敏,不以為意,想說喉嚨痛,多喝開水就會好了,週未也就沒有去看醫生。不過,星期日晚上回到台北,發現不對勁,我怎麼一直流鼻水,好像還有一點發燒,只好在第二天去看醫生。

不過拿回來的藥我想八成都是免疫抑制藥物,開了三種藥和上次的一模一樣,這一種小感冒的藥我都會開了,這叫久病成良醫嗎?

Feuerfuchs Portable 新網站

這幾天,我利用了週未,幫 Feuerfuchs Portable 做了一個新的網站,大概花了二天寫 CSS,半天寫一些很沒有意義的內容,還有把 Unstable 半年的 Feuerfuchs Portable 1.5.14.0 丟到 Testing 了。

大家可以去看看 http://feuerfuchsp.openfoundry.org

另,我又去看了 Firefox Portable 的 Launcher,我發現版號又變了...,最新到 1.6.2.0,又要去追版號了嗎?囧