當我們在RCP中直接加入jar,是無法執行個體的,需要手動的設定一些地方,才能正常運行。
我們拿一個簡單的樣本來說明,這個樣本使用的是eclipse rcp的template中最簡單的一個,也就是大家都見過的Hello,RCP。我用的eclipse版本是3.2M2。
為了便於說明,我自己寫了一個java檔案然後打包成jar,再在rcp程式中調用它。這個程式是這樣的:
Code:
package demo;
public class Hello {
public static String sayHello()
{
return "hello,world";
}
}
[Ctrl+A Select All]
就這麼簡單,打包後做成一個hello.jar。具體過程略去不談。
然後我們建立一個rcp application,具體過程也略去不談。這裡需要提醒大家的是rcp工程的名字最好用小寫英文,用大寫的話可能會出一些問題,至少在我用的這個版本是這樣。
建好以後在下面建立一個lib目錄作為存放第三方庫的目錄。再把前面做好的hello.jar拷貝過去。參見。
圖1
在RCP工程中,你可以有兩種辦法把jar加入到class path中,你可以任選一種:
在RCP工程中,你可以有兩種辦法把jar加入到class path中,你可以任選一種:
在RCP工程中,你可以有兩種辦法把jar加入到class path中,你可以任選一種:
和普通的工程一樣,加入到build path裡面,參見下面圖2開啟plugin的Build頁面,注意到最下面有個“Extra Classpath Entries”了嗎?展開以後選Add Jars把需要的jar加進去,有同樣的效果,參見圖3
圖2
圖3
我在這裡說“任選一種”的意思是不要兩種辦法同時用,否則工程會報錯。
在上面的工作都做完之後,仍然在plugin的Build頁面上,左邊的Binary Build下面把你程式的輸出目錄(我的工程裡面是bin)和你的jar所在的目錄(我的工程裡面是lib)打勾,這樣輸出時候會包含你編譯後的檔案以及第三方庫。仍然參照第三張圖
然後切換到plugin的Runtime頁面,在右下角的Classpath裡面把你程式的輸出目錄(我的程式裡面是bin)和你所有要包含的jar檔案(我的程式裡面是lib/hello.jar)都加進去。參照圖4,這樣就基本上完成了。
圖4
之後所要做的事情就是修改程式了,我在這裡只是簡單地把程式的標題做了修改,找到ApplicationWorkbenchWindowAdvisor這個類,把preWindowOpen修改成下面這樣:
Code:
public void preWindowOpen() {
IWorkbenchWindowConfigurer configurer = getWindowConfigurer();
configurer.setInitialSize(new Point(400, 300));
configurer.setShowCoolBar(false);
configurer.setShowStatusLine(false);
configurer.setTitle(Hello.sayHello());
}
[Ctrl+A Select All]
這個樣本就完成了,之後產生product檔案後export出來就可以看到結果了。過程也略去不談。
運行以後會發現標題列從“Hello,RCP”變成了“hello,world”,參見第圖5
轉載自:http://hi.baidu.com/lingyu125/blog/item/5e870d16a723561fc93d6d53.html