作為某些方面可以替代重量級 Spring 的輕量級套件
Guice 可以透過程式碼的設定,動態決定注入介面時,要選擇的實作類別。
Software entities (class, modules, functions, etc.) should be open for extension, but closed for modification. Junior programmers create simple solutions to simple problems. Senior programmers create complex solutions to complex problems. Great programmers find simple solutions to complex problems. 註1:本部落格的範例程式碼在 2015 年以前的文章中,大多是以全型空白做縮排。如需服用,請自行用文字編輯器的取代功能把全型空白取代成半型空白。
- Bertrand Meyer
- Charles Connell
註2:本部落格的內容授權請參閱部落格底部的授權宣告。
2015年9月10日 星期四
透過 Guice 入門 Dependency Injection(一)
Guice 是一個可以用來取代原本 Java 程式設計師習慣使用的 Factory 的套件
某種程度上也可以算是一個輕量級的 Spring,能夠動態地做實作類別的注入。
關於 Guice 的開發動機,可以參考 GitHub 上說明動機的頁面 [1]。
另外如果想知道關於 Guice 開發團隊自己怎麼看 Guice 和 Spring,可以參考 [2]。
某種程度上也可以算是一個輕量級的 Spring,能夠動態地做實作類別的注入。
關於 Guice 的開發動機,可以參考 GitHub 上說明動機的頁面 [1]。
另外如果想知道關於 Guice 開發團隊自己怎麼看 Guice 和 Spring,可以參考 [2]。
2015年9月9日 星期三
[WARNING] Using platform encoding (MS950 actually) to copy filtered resources, i.e. build is platform dependent!
最近突然注意到,Maven 在執行時都會跑出這一段警告訊息
很快速地 Google 後,看到別人發表的解法,只要在專案的 pom.xml 裡加入以下的設定
就可以指定 Maven 使用 UTF-8 編碼來執行了。
參考資料:
[WARNING] Using platform encoding (MS950 actually) to copy filtered resources, i.e. build is platform dependent!雖然不影響 Maven 的運作,但就覺得編碼不用 UTF-8 就有點不太對~
很快速地 Google 後,看到別人發表的解法,只要在專案的 pom.xml 裡加入以下的設定
就可以指定 Maven 使用 UTF-8 編碼來執行了。
<project> .... <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> </properties> </project>
參考資料:
2015年9月8日 星期二
2015年9月4日 星期五
使用 Maven 匯出第三方函式庫
在已經寫好 pom.xml 的情況下,如果需要匯出 pom.xml 上指定的所有第三方函式庫的話
可以使用 Maven 的 copy-dependencies 的功能:
參考資料:
可以使用 Maven 的 copy-dependencies 的功能:
mvn dependency:copy-dependencies那些第三方函式庫就會被匯出到 ./target/dependency 的目錄裡。
參考資料:
2015年9月3日 星期四
在 Ubuntu 的 VMware 虛擬機器上安裝 VM Tool
一般安裝 VM Tool 的方法,是參考 [1] 的方式,安裝 VMware Tool
不過在部分作業系統上,因為 VMware 已經支援開源版的 VMware Tool:Open VM Tool 的關係 [2]
可以直接利用指令安裝由虛擬機器自行管理的 VM Tool。
關於 Open VM Tool 的說明,以下節錄 [2] 的描述:
參考資料:
不過在部分作業系統上,因為 VMware 已經支援開源版的 VMware Tool:Open VM Tool 的關係 [2]
可以直接利用指令安裝由虛擬機器自行管理的 VM Tool。
apt-get install open-vm-tools
關於 Open VM Tool 的說明,以下節錄 [2] 的描述:
The primary purpose for open-vm-tools is to enable operating system vendors and/or communities and virtual appliance vendors to bundle VMware Tools into their product releases. open-vm-tools is the open source implementation of VMware Tools and consists of a suite of virtualization utilities that improves the functionality, administration, and management of virtual machines within a VMware environment.
參考資料: