我正在使用 Java,当我尝试将数组写入 CSV 文件时,遇到以下错误:
解析器遇到了超过“64,000”个实体扩展
我搜索并发现我需要使用 entityExpansionLimit 来解决这个问题,方法是在 java 命令行中键入:-DentityExpansionLimit=100000
但是对于 Java 和这类事情的新手,我不明白我应该在哪里输入该命令。我尝试在命令提示符下输入,但什么也没发生
有人可以指导我吗?我应该在命令提示符下导航到特定文件夹吗?
使用该选项-D
,您可以将系统属性传递给jvm
(请参阅此处)。
例如,如果您使用
cmd> java -Dfoo=bar MyMainClass
然后您可以使用System#getProperty(String key)在您的应用程序中检索它,如下所示:
String foo = System.getProperty("foo");
System.out.println(foo); // will print bar
在您的情况下,您正在使用的库期望entityExpansionLimit
在“实体扩展”超过值 64,000 时找到具有名称的系统属性,但它没有找到它,即System.getProperty("entityExpansionLimit")
返回null
。
要传递该参数,请通过传递 jvm 系统属性来运行您的应用程序
cmd> java -DentityExpansionLimit=100000 -cp <your-class-path> YourMainClass