在Maven GWT项目中使用Guava

Kev*_*lan 6 gwt maven guava

我有一个项目想要使用Google Guava库(在服务器端和客户端),但是,我无法设置它.

我能够添加GWT和Guava作为依赖项,我的GWT项目正在正确编译.我使用Guava的服务器端代码也可以正常工作.

但是如果我尝试使用以下内容将其添加到我的GWT项目中:

<inherits name="com.google.common.collect.Collect" />
Run Code Online (Sandbox Code Playgroud)

并在开发模式下使用该应用程序mvn gwt:run,它会调出Google开发模式界面,并提供错误的风格:

Unable to find 'com/google/common/collect/Collect.gwt.xml' on your classpath...
Run Code Online (Sandbox Code Playgroud)

大概是因为maven依赖只是编译的类文件,而不是源/ .gwt.xml文件,它需要编译成Javascript.我发现如果我去guava网站并下载文件,就会有一个名为guava-r08-gwt.jar的文件,我认为它正朝着解决方案的方向前进.

理想情况下,我可以在Maven中添加一些依赖项,只允许我使用inherits命令,但欢迎使用任何其他变通方法.


正如其中一个答案所述,这是在起作用.

与此同时,我为此目的设立了一个临时公共专家回购.我不保证它会熬夜,但这里是repo/dependency的东西:

<repository>
  <id>deepthought</id>
  <name>Deepthought Public Repository</name>
  <url>http://deepthought.co/maven-repo</url>
</repository>

<dependency>
  <groupId>com.google.guava</groupId>
  <artifactId>guava-gwt</artifactId>
  <version>r08</version>
</dependency>
Run Code Online (Sandbox Code Playgroud)

不过,现在可以随意使用它.