如何在gwt项目之间建立共享项目?
我有一个GWT游戏项目。我想把一些基类拉到一个可以与我的所有其他GWT游戏项目共享的项目中。比如:如何在gwt项目之间建立共享项目?,gwt,Gwt,我有一个GWT游戏项目。我想把一些基类拉到一个可以与我的所有其他GWT游戏项目共享的项目中。比如: |- com.me.mylib | |---- mylib.gwt.xml // not sure of the contents here | |- com.me.mylib.client | |---- classes you want included clientside go here. FarmFrenzyFinale(gwt游戏项目) AcesOverNew
|- com.me.mylib
| |---- mylib.gwt.xml // not sure of the contents here
|
|- com.me.mylib.client
| |---- classes you want included clientside go here.
- FarmFrenzyFinale(gwt游戏项目)
- AcesOverNewYork(gwt游戏项目)
- mylib(上面两个可以导入的共享项目)
|- com.me.mylib
| |---- mylib.gwt.xml // not sure of the contents here
|
|- com.me.mylib.client
| |---- classes you want included clientside go here.
以上是正确的吗?如果是这样,在eclipse中创建项目时,我们是创建一个新的“java项目”,还是应该创建一个新的“Web应用程序”项目?一个新的“web应用”项目将为我们创建一个独立的gwt项目,所以我猜我们可以只做一个普通的“java项目”,只要我们在上面设置好结构就可以了
然后在上面的设置完成后,我们可以将“mylib”添加到游戏的类路径中(farm frenzy等)。只需右键单击项目,属性->java构建路径->项目->添加
谢谢
--------更新---------------
这就是我的项目当前的样子:
AcesOverNewYork
|-- com.me.acesovernewyork
| |-- acesovernewyork.gwt.xml
|-- com.me.acesovernewyork.client
|-- all java files here, great.
mylib (not a gwt project, just a java project)
|-- com.me.mylib.client
|-- Foo.java
现在AcesOverNewYork(AONY)已经将“mylib”作为项目添加到类路径中(在eclipse中,右键单击AONY,Properties->Java构建路径->项目->添加->mylib)
我在AONY中使用Foo类,编译很好。当我尝试运行AONY时,我得到一个运行时错误:
"No source code is available for type com.me.mylib.client.Foo;
did you forget to inherit a required module?"
我的acesovernewyork.gwt.xml文件中包含以下内容:
<source path='client'/>
嗯,我还缺什么
谢谢我不知道你是否听说过maven。实际上这并不重要,但是maven有一个关于设置多项目GWT的教程。你应该检查它,因为它包含有用的信息,即使你不使用maven 如果不打算使用maven,可以跳过POM部分,其余代码都是纯GWT
如果您将游戏的.gwt.xml文件放入“com.me”(在其项目中)并添加
,那么您所要做的就是创建一个“com.me.client”在游戏项目和库项目中都打包。mylib,它是否包含客户端代码?是的,它包含对GWT类等的引用。好的,我想这就是我如何设置的,但仍然会出现运行时错误,即无法在引用的库项目中找到类。更新了上面的问题以反映它s当前状态。这是因为您的.gwt.xml文件位于“com.me.acesovernyWork”中。它必须位于公共基本包(如“com.me”)中,“客户端”包必须(不幸的是)是该文件的直接子包。然后您可以拥有例如“com.me.client.acesovernyWork”和“com.me.client.mylib”。