[英]get jvm argument in the app when running gradle task
我正在使用gradle
application
插件运行我的main
类。 当我这样做的时候
gradle run -Dparameter=5
并尝试在我的main
功能中获取该参数parameter
public static void main(String[] args) {
System.getProperty("parameter")
}
返回null
。
如何正确传递jvm
参数?
gradle -D
选项设置Gradle进程本身的系统属性,而不是您要运行的任务的系统属性。
您可以改用-P
(项目属性)选项,但是随后您将需要在gradle脚本中获取属性值并强制设置系统属性:
if (project.hasProperty('myPropertyNameHere'))
systemProperty('myPropertyNameHere', myPropertyNameHere)
如果您的应用程序需要一组特定的JVM设置或系统属性,则可以配置applicationDefaultJvmArgs属性。 这些JVM参数应用于运行任务,并在分发的生成的启动脚本中考虑。
例如,您可以添加
applicationDefaultJvmArgs=["-Dparameter=5"]
在build.gradle中
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.