gpt4 book ai didi

java - 从一台开发服务器提供多个 GAE 模块?

转载 作者:搜寻专家 更新时间:2023-11-01 03:05:50 24 4
gpt4 key购买 nike

我正在将一些后端转换为模块,并且对设置开发环境配置感到困惑。我在 Eclipse 中使用 Java 而不是 Maven。架构非常简单:

  • 前端模块是默认的。基本 GAE/GWT 应用程序。将项目放入任务队列。
  • 后端模块处理任务队列。

使用旧的后端架构,一个调试配置将启动开发服务器,该服务器将为 GWT DevMode UI 后端任务处理提供服务。

问题的症结在于 DevMode 的参数提供了一个 -war 命令行参数。现在我们不再有单个 war 文件(有一个 ear 包含两个 war 文件),我们必须独立启动它们。这很好,我们可以创建一个启动前端和后端的启动组。

问题是每个 war 文件都有自己的WEB-INF/appengine-generated/local_db.bin,它实际上创建了两个独立的应用程序。我在这里错过了什么吗?我需要能够在处理新后端任务队列项的 servlet 中的前端 RPC 服务 上放置一个断点,并让它们在一个调试 session 中命中。

感谢您的任何想法。

最佳答案

如果您遵循说明 here ,这将在 Eclipse 中创建一个模块化的应用程序结构,并且根本不使用 Maven。您将需要 Eclipse WTP 以获得所需的项目类型(企业应用程序项目和动态 Web 项目)。

Eclipse 项目结构应如下所示:

<<Enterprise Application Project>> ear-app
|
| (refers to)
|
<<Dynamic Web Project>> app-module-1 "default"
<<Dynamic Web Project>> app-module-2 "any_name_2"
<<Dynamic Web Project>> app-module-3 "any_name_3"
<<Dynamic Web Project>> app-module-4 "any_name_4"

“name”的值是指appengine-web.xml中的“module”元素,而物理web项目可以有任意名称。

请注意,您需要切换到 J2EE 透视图才能使用 GPE WTP 菜单选项,它们不会显示在标准 Java 透视图中。

接下来,您需要将 EAR 项目链接到一个新的本地服务器实例(类型为“Google App Engine”)。

只有一个 Web 模块必须在 appengine-web.xml 中标记为“默认”。

将 EAR 部署到本地服务器后,数据存储位置位于 default 网络模块的 WEB-INF/appengine-generated/local_db.bin 中,并在网络模块之间共享.

关于java - 从一台开发服务器提供多个 GAE 模块?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22941772/

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