是否可以在Eclipse中安装的JRE的默认虚拟机参数中使用字符串替换变量?
问题描述:
在Eclipse Luna中,当我转到Window -> Preferences -> Java -> Installed JREs -> Edit
时出现的对话框使我看起来应该能够在Default VM Arguments框中使用字符串替换变量,但是如果我尝试这样做,那么参数似乎不正确解析。这只是一个错误还是我误解了一些东西?是否可以在Eclipse中安装的JRE的默认虚拟机参数中使用字符串替换变量?
举例来说,如果我有在默认VM参数如下:-Xmx8000m ${JRE_PARAMS}
而在字符串替换窗口JRE_PARAMS值:[email protected] -Dservice.url=http://machine:8091/some/service
当JVM启动和我请致电System.getProperty("testEmailAddress")
,返回的值为[email protected] -Dservice.url=http://machine:8091/some/service
,并且(不奇怪)没有service.url
的属性条目。
更新:尽管下面的answer given by copeg可以在Windows上运行在Juno上,但它似乎不适用于Mac上的Luna。任何人都知道如何在Mac上跳过斜杠?
这似乎为电子邮件地址属性的工作,但不是当值是一个URL - 它将其转换为'“-Dservice.url = http:.. machine:8091.some.service”'。我已经改变了这个问题,以包含一个URL值的属性来反映这一点。任何猜测? –
当使用引号时,URL可以正常工作:'System.getProperty(“service.url”)'返回'http:// machine:8091/some/service'(通过将属性值打印到命令行进行测试)。还尝试了其他类似成功的URL。 – copeg
这似乎是Luna的回归或潜在的平台差异。你在使用什么操作系统?我在Mac上。鉴于被乱码的字符是斜杠,Eclipse可能会尝试将文本解析为路径,而不是将其作为字符串传递。 –