簡體   English   中英

如何在GWT項目中使用自定義包結構?

[英]How can I use a custom package structure in a GWT project?

我使用的是通過Eclipse GWT插件創建新GWT項目時生成的常規GWT項目結構,例如com.mycompany.mygwtmodule.client用於所有GWT編譯為JavaScript的客戶端內容。

現在,我想添加一些具有自定義包結構的客戶端代碼,例如org.othercompany.somepackage ...

那可行嗎? 而且,如果是這樣,怎么辦?

如果不可行,我不需要解決方法。 但是,這可能對您有所幫助,我為什么要這樣做:自定義程序包結構來自GWT項目使用的第三方GWT模塊。 我只需要其中的一小類類就可以將它們復制到我的項目中,而不是包括整個模塊,該模塊包含很多我不在乎的東西。 這些類互相使用。 因為我根本不想接觸他們的代碼,所以我保留了他們原始的程序包結構。

我試圖將<source path ='my-eclipse-project-path / src / org / othercompany / somepackage'/>添加到我的gwt.xml中,但是在托管模式下,我得到了錯誤消息:“無源代碼可以用於org.othercompany.somepackage.SomeClass類型;您忘記了繼承必需的模塊嗎?” 不,我沒有;-)代碼已經存在,但是我無法讓GWT找到它。

感謝您的任何有用評論!

最好創建兩個單獨的模塊,因為您要從其他第3方jar中獲取代碼。 首先創建包含包結構的模塊-com.mycompany.mygwtmodule(一個模塊),然后創建另一個模塊-org.othercompany.somepackage(另一個模塊)

繼承第一個module.gwt.xml中的第二個模塊

 <inherits name="org.othercompany.somepackage" />

您需要在源代碼中添加其他源代碼包。

這是在您的module.gwt.xml中完成的。 有一個元素源,它將列出要包括在客戶端中的所有源包:

<source path="client" />
<source path="shared" />

將包括客戶端中的所有軟件包並共享到前端代碼中。

詳細信息可以在這里找到: http : //www.gwtproject.org/doc/latest/DevGuideOrganizingProjects.html#DevGuidePathFiltering

更新:如果您的軟件包沒有通用軟件包,則需要創建兩個單獨的模塊,而一個繼承另一個。

我們經常使用它,效果非常好。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM