无法使用Netbeans禁用CompactString Java 9

无法使用Netbeans禁用CompactString Java 9,netbeans,jvm-arguments,java-9,Netbeans,Jvm Arguments,Java 9,我试图使用VM选项禁用Java9的CompactString功能:-XX:-CompactString,但它不起作用 当我尝试调试我的应用程序时,String类中的COMPACT\u STRINGS变量始终为true(有或没有VM选项) 我有最新版本的Java9:jdk-9+181 以及Netbeans IDE构建201709070001 我尝试了各种选项来设置VM选项,它们都不起作用 我尝试的是: 在app.conf中设置VM选项,在project.properties中设置它,运行netbe

我试图使用VM选项禁用Java9的CompactString功能:
-XX:-CompactString
,但它不起作用

当我尝试调试我的应用程序时,
String
类中的
COMPACT\u STRINGS
变量始终为true(有或没有VM选项)

我有最新版本的Java9:jdk-9+181 以及Netbeans IDE构建201709070001

我尝试了各种选项来设置VM选项,它们都不起作用

我尝试的是: 在app.conf中设置VM选项,在project.properties中设置它,运行netbeans by./netbeans-XX:-CompactStrings,在project->properties->Run->VM选项中设置JVM选项


这是Netbeans中的一个bug吗?还是我做错了什么?

我试图用一个简单的“Hello World”Java应用程序重现您的问题。但是,在项目属性设置中切换CompactStrings功能对我来说效果很好,并导致CompactStrings被正确设置,因此这不是NetBeans中的错误

尽管我使用的是与您相同的Java(181)版本,但我有一个更新的NetBeans开发版本(Build 201709220002),我的项目属性屏幕和您的项目属性屏幕之间存在一些差异。例如,我的显示了运行时平台字段,但你的没有:

另外需要检查的是,您确实拥有您所期望的环境。我发现当安装了多个版本的Java和Netbeans时,很容易把事情搞砸

这是我在做帮助->关于时看到的:


如果您的环境看起来不错,那么我只能建议您下载NetBeans的最新开发版本并重试。

您需要使用该选项启动应用程序,而不是NetBeans本身。当您运行项目时,NetBeans会启动一个新的JVM。是的,似乎您的执行方法不合适,因此没有设置VM标志。我也尝试过,在Project->Properties->Run中设置JVM参数。这就是你的意思,对吗?@OutOfMind是的,应该是这样的。我可以在intelliJ中更新VM参数,并看到它在工作。在您的配置中,使用
-XX:-CompactStrings
编辑并更新VM参数,您如何查找该值?当使用watch表达式时,我看到了正确的行为。