使用Heroku

时间:2016-03-07 19:46:24

标签: java spring heroku spring-boot

每次运行时都会出现以下错误:'heroku local web'

  

.springframework.core.convert.ConversionFailedException:无法从类型[java.lang.String]转换为类型为'$ PORT'的类型[java.lang.Integer];嵌套异常是java.lang.NumberFormatException:对于输入字符串:“$ PORT”

我的Procfile如下所示:

  

web:java -Dserver.port = $ PORT -jar build / libs / gs-spring-boot-0.1.0.jar

我可以部署到heroku,但我希望能够在远程部署之前在本地运行以验证部署。

我有一个Windows PORT系统环境变量,一个Heroku配置变量设置为'heroku config:set PORT = 8080'。我独立设置了每一个,没有上述错误的变化。任何人都知道我为什么会这样做?

1 个答案:

答案 0 :(得分:1)

在Windows上,您需要引用环境变量,例如system32而不是%PORT%符号,这是* nix特定的。

要解决此问题,您应该创建一个包含以下内容的$文件:

Procfile.windows

然后运行此命令:

web: java -Dserver.port=%PORT% -jar build\libs\gs-spring-boot-0.1.0.jar