选择本地开发服务器上的特定端口非默认模块 [英] Choosing specific ports on local development server for non-default modules

查看:270
本文介绍了选择本地开发服务器上的特定端口非默认模块的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

在我的build.gradle文件,我用我​​的非默认(模块2)的gradle的AppEngine模块以下配置:

 的AppEngine {
    downloadSdk =真
    httpAddress =0.0.0.0
    HTTPPORT = 8081
    appcfg {
        电子邮件=blahemail@domain.com
        的oauth2 =真
    }
}

然而,当我跑我的谷歌AppEngine上配置模块仍然在开始的 some_random_port 的,而不是在8081我想解决这些运行上的端口,这样我就可以靠这些端口,当我在我的本地开发服务器上运行测试的要求。

我是什么做错了吗?或者这只是不支持?

=============================================== =======================
AppEngine上的模块结构:

   - 根(java的应用,耳,AppEngine上)
   - 默认(java的应用,战争的AppEngine) - 需要本地开发服务器上运行的8080
   - 模块2(java的应用,战争的AppEngine) - 需要本地开发服务器上运行的8081

AppEngine上的版本:22年9月1日

摇篮AppEngine上的插件版本:21年9月1日

修改

我也试过运行在它自己的AppEngine上运行configuation每个模块,而模块都在各自的端口上运行,我不能再在它们之间进行通信。试图从默认模块上一个servlet安排在模块2任务提供了以下错误:

  com.google.appengine.api.modules.ModulesException:未知模块
    在com.google.appengine.api.modules.ModulesServiceImpl$ModulesServiceFutureWrapper.convertApplicationException(ModulesServiceImpl.java:365)
    在com.google.appengine.api.modules.ModulesServiceImpl$ModulesServiceFutureWrapper.convertException(ModulesServiceImpl.java:352)
    在com.google.appengine.api.utils.FutureWrapper.get(FutureWrapper.java:96)
    在com.google.appengine.api.modules.ModulesServiceImpl.getAsyncResult(ModulesServiceImpl.java:104)
    在com.google.appengine.api.modules.ModulesServiceImpl.getDefaultVersion(ModulesServiceImpl.java:163)


解决方案

@crazystick回答了对Maven。这是同样的解决方案摇篮重新做:

 应用插件:耳...AppEngine上{
    downloadSdk =真
    httpAddress =0.0.0.0
    jvmFlags = ['-Dcom.google.appengine.devappserver_module.default.port = 8080',
                -Dcom.google.appengine.devappserver_module.module1.port = 8081']
    appcfg {
        电子邮件=blahemail@domain.com
        的oauth2 =真
    }
}

In my build.gradle file, I use the following config for my non-default (module2) AppEngine gradle module:

appengine {
    downloadSdk = true
    httpAddress = "0.0.0.0"
    httpPort = 8081
    appcfg {
        email = "blahemail@domain.com"
        oauth2 = true
    }
}

However, when I run my "Google AppEngine configuration", the module still starts on some_random_port instead of on 8081. I want to fix the ports that these run on, so I can rely on those ports when I run test requests on my local development server.

What am I doing wrong? Or is this just not supported?

====================================================================== Appengine modules structure:

- root( apply java, ear, appengine)
  - default (apply java, war, appengine) - needs to run on 8080 on local dev server
  - module2 (apply java, war, appengine) - needs to run on 8081 on local dev server

Appengine version: 1.9.22

Gradle Appengine plugin version: 1.9.21

EDIT:

I also tried running each module in its own "Appengine run configuation" and while the modules do run in their respective ports, I can no longer communicate between them. Trying to schedule a task on module2 from a servlet on default module gives the following error:

com.google.appengine.api.modules.ModulesException: Unknown module
    at com.google.appengine.api.modules.ModulesServiceImpl$ModulesServiceFutureWrapper.convertApplicationException(ModulesServiceImpl.java:365)
    at com.google.appengine.api.modules.ModulesServiceImpl$ModulesServiceFutureWrapper.convertException(ModulesServiceImpl.java:352)
    at com.google.appengine.api.utils.FutureWrapper.get(FutureWrapper.java:96)
    at com.google.appengine.api.modules.ModulesServiceImpl.getAsyncResult(ModulesServiceImpl.java:104)
    at com.google.appengine.api.modules.ModulesServiceImpl.getDefaultVersion(ModulesServiceImpl.java:163)

解决方案

@crazystick answered it for Maven. Here's the same solution re-done for Gradle:

apply plugin: ear

...

appengine {
    downloadSdk = true
    httpAddress = "0.0.0.0"
    jvmFlags = ['-Dcom.google.appengine.devappserver_module.default.port=8080',
                '-Dcom.google.appengine.devappserver_module.module1.port=8081']
    appcfg {
        email = "blahemail@domain.com"
        oauth2 = true
    }
}

这篇关于选择本地开发服务器上的特定端口非默认模块的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆