【发布时间】:2017-05-23 05:01:24
【问题描述】:
我正在尝试通过 Procfile 使用环境变量配置我的弹性 beanstalk java 应用程序,如下所示:
web: ./bin/myservice -Dhttp.port=$PORT
PORT 环境变量是通过 AWS ui 在我的 beanstalk 环境的“软件配置”屏幕中设置的。
但是,日志表明 $PORT 没有被插值:
Exception in thread "main" java.lang.ExceptionInInitializerError
at com.whatever.services.myservice.Main.main(Main.scala)
Caused by: java.lang.NumberFormatException: For input string: "$PORT"
at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
at java.lang.Integer.parseInt(Integer.java:569)
将选项传递给我的应用程序的正确方法是什么?
编辑 1: 这似乎是与我用来创建项目的可分发 zip 存档的 sbt 本机打包程序插件有关的问题。它生成的 bin/myservice 文件按字面意思解释 $PORT 并将其传递给应用程序。
【问题讨论】:
-
我正在尝试做同样的事情,在我的 Procfile 中使用一个变量。你有过什么运气吗?
标签: java amazon-web-services amazon-elastic-beanstalk procfile