Как вы запускаете micronaut из Gradle с локальными свойствами - PullRequest
1 голос
/ 02 июля 2019

Я хочу запустить сервер Micronaut из командной строки Gradle с «локальными» переменными среды.Обычная команда

.\gradlew.bat run

будет использовать переменные по умолчанию, определенные в файле application.yml.Я хочу переопределить некоторые из них значениями для моей локальной среды, и поэтому мне нужно указать системное свойство micronaut.environments = local , чтобы использовать переопределяющие значения из application-local.yml файла.

.\gradlew.bat run -Dmicronaut.environments=local

Приведенная выше команда не будет работать, поскольку Gradle примет только -Dmicronaut для системного свойства, а остальные ".environments = local" будут рассматриваться как другое имя задачи:

Task '.environments=local' not found in root project 'abc'

Как правильно передать такое системное свойство процессу java?

Ответы [ 2 ]

1 голос
/ 03 июля 2019

Команда ниже работает для unix , вероятно, она должна работать и для windows :

MICRONAUT_ENVIRONMENTS=local gradle run

или использовать упаковщик gradle

MICRONAUT_ENVIRONMENTS=local .\gradlew.bat run

PS также вы можете найти такой же подход для Spring Boot

0 голосов
/ 19 июля 2019

Мой подход - добавить задачу Gradle.

task runLocal(type: JavaExec) {
   classpath = sourceSets.main.runtimeClasspath
   main = "dontdrive.Application"
   jvmArgs '-Dmicronaut.environments=local'
}

затем начните с:

./gradlew runLocal
...