尝试在Heroku上启动我的游戏应用程序时出现此错误:
heroku[web.1]: Error R11 (Bad bind) -> Process bound to port 8000, should be 46275 (see environment variable PORT)
我认为这是试图收听Heroku禁止的jpda端口。我的Procfile如下所示:
web: play run --http.port=$PORT $PLAY_OPTS
heroku配置中的我的PLAY_OPTS如下所示:
PLAY_OPTS => --%prod -Dprecompiled=true
在我的application.conf中,模式设置如下:
application.mode=dev
我需要做些什么来部署它?我是否需要以某种方式禁用jpda端口,或将模式设置为其他?
答案 0 :(得分:2)
在application.conf文件中,您需要一行来定义prod模式
%prod.application.mode=prod
尝试本地运行play run - %prod以确保在此模式下不打开jpda端口。
答案 1 :(得分:0)
在dev
模式下看起来不是很好的方法。在play-1.2.3/framework/pym/play/application.py
中,您可以看到它始终在dev
模式下启动调试内容:
if self.readConf('application.mode') == 'dev':
if not self.play_env["disable_check_jpda"]: self.check_jpda()
java_args.append('-Xdebug')
java_args.append('-Xrunjdwp:transport=dt_socket,address=%s,server=y,suspend=n' % self.jpda_port)
java_args.append('-Dplay.debug=yes')