GWT 在编译器的类路径上获取继承的模块

标签 gwt maven

我有一个包含多个 gwt 模块的项目,其中一个是库模块,没有其他模块继承的入口点。所有模块都包含在使用 maven 和 gwt-maven-plugin 构建的单个项目中。不幸的是,构建项目失败了,因为 gwt:compile 在编译继承它的主模块时正在类路径上寻找继承的模块。如何在类路径中获取库模块以编译主模块?

最佳答案

您将需要做一些创造性的“Maven-ing”,因为我刚刚编造了一个术语来描述它。 (实际上它可能根本没有创意,但我自己有点 Maven 新手,所以它也难倒了我一段时间)。

从某种意义上说,您是对的,当 GWT 编译器尝试编译您的“主”模块时, 正在类路径中寻找继承模块的 源代码。为此,您需要在主模块的 pom 中添加对库模块源的依赖项(仅限于编译阶段)。

类似这样的:

...
<artifactId>main-module</artifactId>
...
<dependency>
  <groupId>library-group</groupId>
  <artifactId>library-artifact</artifactId>
  <type>jar</type>
  <version>0.1-SNAPSHOT</version>
  <classifier>sources</classifier>
  <scope>compile</scope>
</dependency>
...

现在,您从哪里获得这些来源可能会有所不同。如果您只是想从 IDE(如 Eclipse)中执行此操作,这可能就足够了,因为 m2eclipse 插件足够聪明,可以知道从哪里获取这些源(如果库模块也在您的工作区中)。如果这是您的实际构建过程,那么您将需要修改 library-module 的 pom 以生成 -sources Artifact 以及标准的“library-artifact”。所以你最终会得到两者:

library-artifact-0.1-SNAPSHOT.jar

library-artifact-0.1-SNAPSHOT-sources.jar

希望 gwt-maven-plugin 从那时起如何进行更清楚。

差点忘了,我在这里回答的另一个问题也可能有用:GWT Project Structure .

关于GWT 在编译器的类路径上获取继承的模块,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6073753/

相关文章:

Maven exec 插件 - 执行 python 脚本

java - 诱惑报告中的附件

java - 我应该如何从另一个spring项目中调用打包的spring项目?

java - 使用声明性服务的 OSGi+Pax-Web 中的 GWT 问题

java - GWT 列表框多选

java - Eclipse 中的镜像 API

Maven 在属性中存储文件和文件大小的 MD5 校验和,然后过滤另一个文件

java - 如何使用字符串调用 GWT ClientBundle 接口(interface)的方法?

google-app-engine - GWT/股票观察者 : can't connect the server

css - 如何使用 GWT 2.4 和 uiBinder 添加空格?