如何同时为Java和GWT项目共享EventBus?

时间:2015-02-03 13:30:44

标签: java javascript gwt guava

我有一个使用Guava EventBus的java项目。现在我想使用这个项目中的代码来处理GWT而不重写它。我知道GWT有自己的EventBus,但我无法更改Java项目中的导入,因为这会破坏Java项目。

在我的GWT项目中,我加入了番石榴和gwt-guava罐子。我还包括:

<inherits name="com.google.common.collect.Collect"/>

在我的gwt.xml文件中。 Guava至少在GWT项目中为其他课程(例如,Strings)工作。

我想使用Guava的EventBus而不是GWT提供的。我需要这个,因为我的Java项目不适用于那个GWT EventBus。 问题是GWT项目使用GWT EventBus而Java Project使用Guava EventBus。我如何将这些东西放在一起?如果我能以某种方式从我的GWT项目中的Java项目中替换Guava EventBus,那将是非常好的。

如何在GWT中使用Guava EventBus?有没有办法在不改变其他Java项目中的依赖项的情况下使用它?

1 个答案:

答案 0 :(得分:0)

Guava&#39; EventBus在GWT客户端代码中不可用。 (你可以告诉我it doesn't have the @GwtCompatible annotation。)

有时可以使用GWT下不可用的课程。但是,EventBus使用Java反射,这在GWT下几乎不可用,因此它无法使用。