Проект находится в Groovy/Grails/Gradle/Camel МаршрутыYAML - groovy - env var не может быть целым числом?
Это кажется довольно разумным:
server:
port: ${PORT}
Но я получаю:
java.lang.NumberFormatException: For input string: "${PORT}"
at org.grails.config.CodeGenConfig.convertToType(CodeGenConfig.groovy:191)
at org.grails.config.CodeGenConfig.getProperty(CodeGenConfig.groovy:264)
at grails.config.ConfigMap$getProperty.call(Unknown Source)
at run-app.run(run-app.groovy:31)
at org.grails.cli.profile.commands.script.GroovyScriptCommand.handle(GroovyScriptCommand.groovy:152)
at org.grails.cli.profile.AbstractProfile.handleCommand(AbstractProfile.groovy:452)
at org.grails.cli.GrailsCli.handleCommand(GrailsCli.groovy:373)
at org.grails.cli.GrailsCli$_handleCommandWithCancellationSupport_closure6.doCall(GrailsCli.groovy:464)
at org.grails.cli.GrailsCli$_handleCommandWithCancellationSupport_closure6.call(GrailsCli.groovy)
Строка Env вары не имеют проблему и работать просто хорошо. Я не могу найти какой-либо синтаксис, чтобы сделать трансляцию в int при поиске.
Любые мысли?
Что фактическое значение '$ PORT'? Вы уверены, что можете просто ввести envvar в свой yml config? Ошибка заключается в том, что строка «$ {PORT}» не является целым числом, которое является истинным. – sebnukem
Я использую intellij, и я установил PORT в 8081 в переменные среды, когда редактирую конфигурацию запуска под Grails. Да, я могу вводить другие vars, если они являются строками с использованием шаблона $ {}. Есть ли лучший образец? –
Это действительный YAML (т. Е. Вы ** можете ** иметь неуказанный строковый скаляр '$ {PORT}' без каких-либо проблем), поэтому удалил неадекватный тег. – Anthon