如何在另一个应用程序中使用一个gwt应用程序的源代码



我有两个不同的gwt项目,希望在另一个模块中使用一个gwt应用程序的类。有办法做到这一点吗?

我遵循了以下方法,在第二个项目中添加了两行

<inherits name="com.yellowbook.mdb.NationalResidential"/>
<source path='com.yellowbook.mdb' />

但是我得到了以下错误:

Unable to find 'com/yellowbook/mdb/NationalResidential.gwt.xml' on your classpath; could be a typo, or maybe you forgot to include a classpath entry for source?

我错过什么了吗?

除了复制和粘贴之外,您还可以编写第三个GWT模块来实现这些类,并在两个应用程序中继承这个新模块。这样你就可以在任何地方重复使用它。

如果您想将一个项目用于另一个项目,那么以下是一些可能的方法:

第一种方法

如果您使用两个项目作为一个单独的模块,即GWTModule,那么您可以为公共代码创建一个包结构,并将条目添加到GWT.xml文件中。

项目模块1.gwt.xml

<source path='shared'/>

项目模块2.gwt.xml

<source path='shared'/>

第二种方法

如果你为此创建了单独的项目,那么

正在开发中:

  1. 在gwt.xml文件中添加模块条目,即

    <inherits name='com.project2'/> //same for project 1
    
  2. 同样,如果您使用eclipse,那么在构建路径中添加所需的项目以进行开发

生产中:

  1. 您需要为两个项目创建一个jar并添加到类路径中

但是如果你使用第二种方法,那么这不是一个很好的方法,因为当你想加载一个project1时,project2会自动加载,并且会加载不必要的javascript,所以最好使用模块方法,或者创建一个公共代码为project1&project2,并在两个项目中使用它。

最新更新