无法在gradle应用程序中设置系统属性
我正在使用无法在gradle应用程序中设置系统属性,gradle,Gradle,我正在使用应用程序插件来运行我的应用程序。我想像这样设置属性prop -Dprop="some value" apply plugin: 'application' mainClassName='my.package.Main' run { // allows to run application { gradle run -Pdocument=["file.xml"] } if (project.hasProperty("document")) { arg
应用程序
插件来运行我的应用程序。我想像这样设置属性prop
-Dprop="some value"
apply plugin: 'application'
mainClassName='my.package.Main'
run {
// allows to run application { gradle run -Pdocument=["file.xml"] }
if (project.hasProperty("document")) {
args groovy.util.Eval.me(document)
}
}
dependencies {
compile ("org.apache.poi:poi:$apachePoiVersion")
compile ("org.apache.poi:poi-ooxml:$apachePoiVersion")
}
applicationDefaultJvmArgs = ["-Dprop=$prop"]
gradle run -Pprop="D://my-folder"
为此,我在我的build.gradle
applicationDefaultJvmArgs = ["-Dprop=$prop"]
我的build.gradle
如下所示
-Dprop="some value"
apply plugin: 'application'
mainClassName='my.package.Main'
run {
// allows to run application { gradle run -Pdocument=["file.xml"] }
if (project.hasProperty("document")) {
args groovy.util.Eval.me(document)
}
}
dependencies {
compile ("org.apache.poi:poi:$apachePoiVersion")
compile ("org.apache.poi:poi-ooxml:$apachePoiVersion")
}
applicationDefaultJvmArgs = ["-Dprop=$prop"]
gradle run -Pprop="D://my-folder"
在我的Main
应用程序中,我尝试显示它以检查它是否已设置
try (ClassPathXmlApplicationContext context =
new ClassPathXmlApplicationContext("spring-context.xml")) {
LOGGER.info("System property prop: [{}].", System.getProperty("prop"));
}
但它会显示系统属性属性:[null]
。
我像这样启动应用程序
-Dprop="some value"
apply plugin: 'application'
mainClassName='my.package.Main'
run {
// allows to run application { gradle run -Pdocument=["file.xml"] }
if (project.hasProperty("document")) {
args groovy.util.Eval.me(document)
}
}
dependencies {
compile ("org.apache.poi:poi:$apachePoiVersion")
compile ("org.apache.poi:poi-ooxml:$apachePoiVersion")
}
applicationDefaultJvmArgs = ["-Dprop=$prop"]
gradle run -Pprop="D://my-folder"
属性
-Pdocument=“[”””
工作正常。问题出在哪里?我刚刚在一个临时创建的应用程序中试用过,效果很好。请使用-d
开关运行gradle,并检查输出是否传递了属性以及属性的值。@Opal当我开始使用系统属性'prop',project.getProperty('prop')提供系统属性时
它开始工作正常