首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >开发服务器上的GAE模块

开发服务器上的GAE模块
EN

Stack Overflow用户
提问于 2013-11-21 05:36:33
回答 4查看 1.7K关注 0票数 6

我在Google AppEngine中使用多个模块,并想知道是否有可能运行开发服务器(java版本),以便分配给不同模块的端口总是相同的?目前他们似乎是随机的。我能决定那些港口吗?我希望能够以可持续的方式(从发展的角度)与模块之间建立沟通。现在,如果我们有两个模块,让我们将它们称为A和B,我们希望使用模块B中由模块A公开的服务。要知道从模块B中访问哪个URL是不容易的。

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2013-12-01 08:35:40

虽然模块服务在这个场景中可能很有用,而且我相信它会起作用,但我以一种稍微不同的方式解决了这个问题。

我修改了构建脚本,以便在localhost上运行所有模块,但是在不同的端口上运行(实际上有几个本地appengine实例正在运行)。配置信息(IP:PORT)存储在配置文件中,任何模块都很容易访问。对于部署,我仍然将应用程序打包到ear存档中。

票数 -2
EN

Stack Overflow用户

发布于 2014-06-10 12:17:32

可以使用JVM参数设置每个模块的端口。

代码语言:javascript
运行
复制
-Dcom.google.appengine.devappserver_module.{module_name}.port=8081

我使用appengine plugin进行以下配置(我的定制模块称为“分析”):

代码语言:javascript
运行
复制
<plugin>
   <groupId>com.google.appengine</groupId>
   <artifactId>appengine-maven-plugin</artifactId>
   <configuration>
      <jvmFlags>
         <jvmFlag>-Ddatastore.backing_store=${project.basedir}/target/local_db.bin</jvmFlag>
         <jvmFlag>-Xdebug</jvmFlag>
         <jvmFlag>-Dcom.google.appengine.devappserver_module.analysis.port=8081</jvmFlag>
         <jvmFlag>-XX:MaxPermSize=512m</jvmFlag>
         <jvmFlag>-agentlib:jdwp=transport=dt_socket,address=8001,server=y,suspend=n</jvmFlag>
      </jvmFlags>
      <enhancerApi>JPA</enhancerApi>
      <fullScanSeconds>2</fullScanSeconds>
   </configuration>
</plugin>

当我运行mvn appengine:devserver时,与该模块对应的日志如下所示:

代码语言:javascript
运行
复制
[INFO] INFO: Started SelectChannelConnector@127.0.0.1:8081
[INFO] Jun 10, 2014 10:44:16 AM com.google.appengine.tools.development.JettyContainerService startHotDeployScanner
[INFO] INFO: Full scan of the web app in place every 2s.
[INFO] Jun 10, 2014 10:44:16 AM com.google.appengine.tools.development.AbstractModule startup
[INFO] INFO: Module instance analysis is running at http://localhost:8081/
[INFO] Jun 10, 2014 10:44:16 AM com.google.appengine.tools.development.AbstractModule startup
[INFO] INFO: The admin console is running at http://localhost:8081/_ah/admin
[INFO] Jun 10, 2014 11:44:16 AM com.google.appengine.tools.development.DevAppServerImpl doStart
[INFO] INFO: Dev App Server is now running

希望能帮上忙。

票数 8
EN

Stack Overflow用户

发布于 2016-05-03 18:35:35

您可以通过模块的appengine-web.xml文件中的系统属性设置模块的端口。例如:

代码语言:javascript
运行
复制
<appengine-web-app xmlns="http://appengine.google.com/ns/1.0">
    <module>MY_MODULE</module>
    <version>v1</version>
    <threadsafe>true</threadsafe>
    <system-properties>
        <property name="com.google.appengine.devappserver_module.MY_MODULE.port"
            value="8081"/>
    </system-properties>
</appengine-web-app>
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20113299

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档