2012-04-11 43 views
2

我正在使用GWT的項目。它沒有問題,但現在我需要其他地方的代碼。事實上,我需要將我的GWT-RPC方法複製到另一個(非GWT)項目中。與GWT使用共享代碼的最佳方式?

我想我有兩個選擇:

1)創建的jar包含共享代碼和GWT(及其他)項目指的是。問題是共享代碼包含GWT客戶端所需的一些類。據我所知GWT不支持(來自jar的客戶端類)。

2)保持GWT項目不變,並使用Eclipse的導出工具生成包含共享類的jar文件。問題在於GWT客戶端類實現了com.google.gwt.user.client.rpc.IsSerializable,但是可以通過使用該名稱創建虛擬接口來解決這個問題。

有何評論?

當我寫這個時,我有一個想法直接從非GWT項目調用GWT-RPC ......會有可能嗎?

回答

4

GWT支持來自jar文件的客戶端類。唯一的要求是jar文件也應該包含java源文件。例如,標準gwt類位於jar gwt-user.jar中。

希望這會有所幫助。

+0

謝謝。我必須添加到projectname.gwt.xml中?我嘗試了」/>但出現錯誤:在源碼包中找不到「<我的客戶端類>。檢查模塊的繼承鏈;它可能不會繼承所需的模塊或者一個模塊可能沒有正確添加其源路徑條目。「 – Stongkin 2012-04-11 06:38:29

+0

在你的jar裏面你的.gwt.xml放在一個包裏(例如com.example.gwt),然後使用 krishnakumarp 2012-04-11 06:51:28

+0

只是一個精度:GWT不會注意java源代碼的來源,它加載了classpath的所有內容,所以你可以有一個帶有編譯類的JAR('* .class'文件),另一個帶有源文件('* .java'和'* .gwt.xml '文件),然後將兩者都放在GWT編譯器或開發模式的類路徑中。 – 2012-04-11 13:11:28

1

您只需創建另一個項目並像這樣調用GWT RPC對象。它會工作相信我。我已經做到了。