2

对于过去的 GWT 项目,我使用这个架构类型来创建一个 3 模块项目。它将客户端代码、服务器代码和两者之间共享的代码分开。这允许更快的开发,因为您不必在每次进行服务器端更改时重新编译整个项目。

现在,我想使用 Errai 来利用其更自然的模板系统。我已经尽力只导入 erai-ui 和相关依赖项,但我无法让它工作。在搜索之后,似乎 Errai 被设计为用作框架而不是用作库。您可以在此处查看我关于此主题的 SO 问题。

我找到了这个线程,有人完全按照我的需要做了。不过,他们根本没有发布他们是如何做到的。

我找到了这个指南,它展示了如何将 Errai 添加到现有的 GWT 项目中,但这假设你的 GWT 项目是在一个标准的单个模块中设置的,这是我不想要的。

我的主要问题是我不知道 pom 文件中需要什么来完成这项工作。我只想使用 Errai 的客户端功能,例如 errai-ui 和 errai-navigation,所以我认为 Errai 的东西可以单独存在于客户端模块中。但是,当生成一个新的 Errai 项目时,pom 中有很多东西,我不知道如何将它们转移到父 pom 和客户端 pom 中。

理想情况下,我只需要一个示例或框架项目就可以开始。如果这些东西不存在,那么在正确方向上的提示将不胜感激。

4

1 回答 1

1

您需要使用 Maven 并拥有这样的父子项目:

<?xml version="1.0" encoding="UTF-8"?>
<project
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"
xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<modelVersion>4.0.0</modelVersion>

<groupId>com.mycompany.app</groupId>
<artifactId>parent</artifactId>
<version>0-SNAPSHOT</version>
<name>APP::Parent</name>
<packaging>pom</packaging>

<modules>
  <module>client</module>
  <module>server</module>
  <module>shared</module>
</modules>

</project>

这样,您的服务器代码和客户端代码就会分开,并将shared依赖项导入到clientandserver

我希望这有帮助。

于 2016-09-08T00:52:15.530 回答