gpt4 book ai didi

java - 是否有一个不会混淆职责的 GWT Maven 项目结构?

转载 作者:搜寻专家 更新时间:2023-10-31 19:40:02 27 4
gpt4 key购买 nike

我刚刚开始使用 Maven 作为构建系统进行 GWT 开发。

我来自 Java + Flex 世界,所以我自然而然地拥有完全分离的客户端模块和服务器端模块。

在挖掘 GWT 的最佳实践并挖掘得越来越深时,对我来说,GWT 项目的默认配置越来越像是一团乱七八糟的责任。尤其是涉及到多模块项目时。

我确实明白,约定表明服务器端逻辑属于“服务器”包,共享代码属于“共享”包,GWT 编译器在“客户端”包中编译成 HTML+JavaScript 的东西。所有代码都转到 src/main/java。到目前为止一切顺利。

无论我怎么看...对我来说,“客户端”包中的东西只是死代码。即使 java 编译器将其编译为类,这些类也永远不会在运行时使用,只需要在编译阶段向 GWT 编译器提供输入。所以即使它看起来像 Java,它实际上不是而且只是看起来像 Java。将它们与“实时”代码放在同一个 jar 里感觉有点脏。

像这样的 Maven 结构不是更有意义吗:

/src/
/src/main/
/src/main/java
/src/main/shared
/src/main/gwt

并让 java-compiler-plugin 使用 src/main/java 和 src/main/shared,让 GWT 编译器使用 src/main/gwt 和 src/main/shared?

此外,如果构建会产生两种类型的 Artifact ,感觉会好很多......普通的“ jar ”包含来自 src/main/java 和 src/main/shared 的类,以及第二个“gwt”,其中包含类以及 src/main/gwt 和 src/main/shared 的来源。

我不会向一些混合的 jar 添加依赖项,但可以决定是要导入一些 GWT 组件还是要导入一些服务器端功能。

接下来是 GWT 默认将 xml、资源和其他内容放在 src/main/java ... XML && Resources != Java ;-)

或者所有这一切是否有真正的原因,我只是还没有意识到......或者我只是必须开始变得肮脏而不用担心这样的事情?

克里斯

最佳答案

我刚才得出了同样的结论,并创建了几个原型(prototype)来帮助入门:https://github.com/tbroyer/gwt-maven-archetypes (announcement)。

那些原型(prototype)仍然有 *.gwt.xml 等。到 src/main/java,因为 Google Plugin for Eclipse 不支持将它们放在其他任何地方(我听说它已在最新版本中修复,但尚未检查)。

关于java - 是否有一个不会混淆职责的 GWT Maven 项目结构?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15022516/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com