gpt4 book ai didi

java - Antlr 解析的输入的最大大小

转载 作者:行者123 更新时间:2023-12-01 13:57:09 25 4
gpt4 key购买 nike

我有一个 2.5 GB 的文件,我正在尝试使用 Java 中的 Antlr 来解析该文件。首先,我遇到了内存不足异常,因此我增加了最大堆大小。然后它失败并显示以下堆栈跟踪:

Exception in thread "AWT-EventQueue-0" java.lang.NegativeArraySizeException
at java.util.Arrays.copyOf(Arrays.java:2882)
at org.antlr.v4.runtime.ANTLRInputStream.load(ANTLRInputStream.java:123)
at org.antlr.v4.runtime.ANTLRInputStream.<init>(ANTLRInputStream.java:86)
at org.antlr.v4.runtime.ANTLRInputStream.<init>(ANTLRInputStream.java:78)
at MyClass.runAntlr(MyClass.java)

我的猜测是某些索引变量溢出了。

是否有一个输入流可以处理任意大的文件?或者比 ANTLRInputStream 更大的文件?

最佳答案

这很有趣。前几天我自己也注意到了同样的事情。索引全部是整数。 Sam 和我计划在某个时候对此进行修复;如果您查看分支,您现在就可以使用它

https://github.com/parrt/antlr4/tree/long-intervals

关于java - Antlr 解析的输入的最大大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19569300/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com