Прохождение правильных аргументов JVM для воспроизведения 2.2.1 приложение на Heroku
-
21-12-2019 - |
Вопрос
Я пытаюсь передать правильные аргументы JVM к моей плейте 2.2.1 приложение, развернутое на Heroku, но есть проблема.
Мой Procfile выглядит так:
Веб: Target / Universal / Stage / Bin / MyApp -Dhttp.port= $ {port} -Dconfig.file= conf / production.conf -j -j-javaagent: lib / heroku-javaagent-1.4.jar= stdout= true, lxmem= true -j-javaagent: lib / newrelic.jar -j-dnewrelic.config.file= lib / newrelic.yml
JVM value: -Djava.rmi.server.useCodebaseOnly=true
JVM value: -Xms1024m
JVM value: -XX:MaxPermSize=256m
JVM value: -XX:ReservedCodeCacheSize=128m
JVM value: -Duser.dir=/app/target/universal/stage
JVM value: -Dhttp.port=57279
JVM value: -javaagent:lib/heroku-javaagent-1.4.jar=stdout=true,lxmem=true
JVM value: -Xmx1024m
JVM value: -javaagent:lib/newrelic.jar
JVM value: -Dnewrelic.config.file=lib/newrelic.yml
JVM value: -Dconfig.file=conf/production.conf
.
Так что «Java_opts: -xmx384m -xss512k -xx: + USECompressedoops», по-видимому, не читается скриптом.
Решение
Проблема состояла в том, что сгенерированный игровой скрипт читает строчные буквы «Java_opts» вместо «Java_opts».
Так что, если вы устанавливаете переменную Java_opts, она будет работать:
heroku config:set java_opts="-Xms128m -Xmx384m -Xss512k -XX:+UseCompressedOops"
. Не связан с StackOverflow