跳到主要內容

發表文章

目前顯示的是 六月 5, 2011的文章

Hadoop with Netbeans 函式包裹至單一專案JAR檔

    在Hadoop雲端環境執行程式時, 主要是將程式先包裹為一個JAR檔後,由Master 將其做為Task送出到各個node進行處理, 然而當系統較為複雜時,程式內引用的處理程序往往更為繁雜, 以生物資訊的案例來說, 一個專案中可能會需要用到如:連結遠端特定服務的library ( Ex:BLAST) , XML 的Library (Ex: JDOM) , 網路連結套件 (Ex: httpclient), WSDL, SAAJ …. 等許許多多的外部函式庫。   這狀況若以Web Service 來說並不會造成問題, 因為Netbeans 會自動Deploy 成一個 war檔進行部署。   但在一般的專案中, Netbeans只會將專案本身包為 JAR檔,其餘外部的函式( 如引入在 /lib/下的外部jar檔) 在build後並不會包入JAR中,而僅是存放在dist/中的lib/目錄下。   這在平常或許沒什麼太大問題, 只要設定classpath或放到公用java classpath (ext/lib)中即可。   但在雲端環境中,由於JAR是做為Task傳送到不同的node server執行, 除非是每個node都預先存放好 library,否則在執行時便會因為僅將專案JAR檔送出, 造成 node server找不到外部library 而引發ClassNotFoundException導致task falue 。   解決上述問題的方式,有以下幾種方法: 將library放入各node Server的共用函式資料夾 將外部涵式解開JAR後,將package複製到自己的專案內,再令其重新build包裹在一起 直接將JAR檔包進JAR中   然而在雲端環境中,若要逐一對node server預先設定外部library, 不只耗時費工 (node server可能高達百臺),更有可能因為外部server而無法進行設定。   以上作法最便利的便是第三種方式:將外部的JAR包入專案的JAR中 此方法類似 Eclipse中的 “Fat Jar” plugin ,可以將外部的JAR直接包裝進JAR中, 而 Netbeans的作法則僅需修改ANT的build.xml便可達成。   唯編輯AN

浸淫無知媒體,你無力了嗎?

      現在的新聞, 只懂得用聳動標題吸引人目光,知識不足還毫無邏輯!   出處: http://tw.news.yahoo.com/article/url/d/a/110608/1/2sy62.html     這篇文章內文討論的明明是熊果酸可以控制體重, 並且防止肌肉萎縮, 但竟然會下了個『吃蘋果不吃皮 老來肌肉恐無力』這樣的標題!   言下之意, 是指蘋果肉含有讓肌肉萎縮的毒性, 需要靠蘋果皮中和才不會肌肉無力嗎??   絲毫沒有半點邏輯。   我們需要的是能增進知識的健康訊息,而不是連科普新聞都開始娛樂化。 文中僅在文末提及作者,不但其原文名稱未附註,甚至連研究報告的出處都沒有引用, 不僅缺乏學術倫理,新聞專業更是蕩然無存,   這樣的媒體素質,實在令人擔憂。       BP 2011.06.08

漫步,Münster, Deutschland

Camera : Leica M3 Len : LEITZ Elmar 90mm/F4.0 Film : Agfa Vista 100 Date : 2010.08 Location : Münster , Germany Flickr 上的相片集 2010 Muenster 。 BP 2011.06.07