【发布时间】:2014-08-26 23:11:32
【问题描述】:
我在访问我的程序中的 VM 参数时遇到问题。我正在编写一个注释处理器,我想在其中访问一些 VM 参数。我正在使用 NETBeans IDE。我创建注释处理器的 jar 文件,然后在另一个项目中使用它,该项目具有带有注释的 java 文件。
现在在我的注释处理器项目中,在 IDE 中我将 VM 参数设置如下
-Dname="hello from VM"
当我尝试访问注解处理器的 process() 函数时
String property = System.getProperty("name");
System.out.println(property);
它打印空。 我们可以在编译期间访问这些 VM 参数吗?因为注释处理器和带注释的类都在同一个 VM 中运行? 谢谢
【问题讨论】:
-
您的问题与注释有何关系?
-
@Thirler - 我已经看到了链接,我试过了,但我没有成功。我不确定我们是否可以在编译期间访问 VM 参数,所以为了给出我试图访问的上下文,我已经提到了注释处理。
-
@Andremoniy 我正在尝试访问注释处理器中的源文件。但我无法通过镜像或反射 api 获取源路径。所以我吹捧存储源路径并在注释处理器中访问它。由于注释处理器和注释类都将在同一个 JVM 上运行,我的一位朋友建议使用 JVM 参数。因此我试图像这样访问它们。
标签: java jvm-arguments annotation-processing