繁体   English   中英

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

[英]How can I share an EventBus for a Java and a GWT project at the same time?

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

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

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

在我的gwt.xml文件中。 番石榴至少在GWT项目中为其他类(例如,字符串)工作。

我想使用Guava的EventBus,而不是GWT提供的EventBus。 我需要这样做,因为我的Java项目无法与该GWT EventBus一起使用。 问题是GWT项目使用GWT EventBus,而Java项目使用Guava EventBus。 如何将这些东西放在一起? 如果能以某种方式替换GWT项目中Java项目中的Guava EventBus,那就太好了。

如何将Guava EventBus与GWT一起使用? 有没有一种方法可以使用它而不更改其他Java项目中的依赖关系?

Guava的EventBus在GWT客户端代码中不可用。 (您可以知道,因为它没有@GwtCompatible注释 。)

有时可以使GWT下不可用的类可用。 但是, EventBus使用Java反射,而Java反射在GWT下几乎不可用,因此无法使其可用。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM