如果我在Java程序代码中设置属性,它可以工作:
try {
System.setProperty("javax.net.ssl.trustStore", "/home/ylinghao/AllocationAnomaliesDetection/env/AllocationAnomaliesDetection-1.0/runtime/certs/InternalTrustStore.jks");
System.setProperty("javax.net.ssl.trustStorePassword", "password");
} catch (Exception e) {
System.out.println("Failed to specify keystore for issue" + e);
}
但是如果我尝试在ant的build.xml中设置<jvmarg>
或<systproperty>
中的属性,则会失败。谁能告诉我有什么区别?谢谢!
答案 0 :(得分:0)
我在这里引用文档网站:
使用嵌套元素指定类所需的系统属性。在执行类(ANT的VM或分叉的VM)期间,这些属性将可供VM使用。此元素的属性与环境变量的属性相同。
您需要fork="true"
才能生效jvmarg
或sysproperty
。
答案 1 :(得分:0)
您的问题是,您正在构建应用程序。所以你正在配置的jvm settign用于执行ant本身(或者你所使用的任何辅助java进程,例如,编译代码)。
所以在你的蚂蚁中你不会影响程序的执行,这在你启动时会在另一个java进程中完成。