6

我有一个我一直在做的项目,直到今天一切都很顺利。我在一个 java 类文档中有近 6000 行代码。如果我尝试在代码中再添加一个 IF 子句,则在调用该类时程序会引发异常。我试图放入类中的所有其他片段都会导致类在调用时失败。我试图添加我知道可以正常工作的测试代码,它们都抛出了强制关闭警报对话框。相信我,我尝试放入课堂的最后一个片段没有任何问题。一旦我取出最后一个“if”片段,就没有错误了。有没有人见过这个?调用类时,模拟器中会引发异常。我得到强制关闭警报窗口。这是java文件大小:172,503字节提前谢谢!

4

4 回答 4

4

您可以使用以下设置进行修改:

--launcher.XXMaxPermSize
256m
--launcher.defaultAction
openFile
-vmargs
-Dosgi.requiredJavaVersion=1.5
-Xms40m
-Xmx512m
于 2012-04-21T04:05:41.217 回答
3

我前段时间遇到过这个问题,发现只要不超过方法限制,一个类中有 50k 行或更多代码是没有问题的。

根据实际导致字节码大小的一种方法中的内容,我在 2-3k 行代码/方法之间遇到了限制。

添加:

顺便说一句,实际上当您的总代码变得太大而无法编译时,Eclipse 会崩溃——只需将 Eclipse 的内存增加到 1 Gb 左右。到目前为止,这对于我总共有大约 100k 行的项目来说已经足够了......

于 2012-04-21T07:55:46.820 回答
1

我之前注意到这一点,Eclipse 运行 Java 本身,所以它非常占用内存,如果你有太多的代码,以至于它需要超过可以分配的东西,它就会崩溃。

于 2012-04-21T04:01:56.413 回答
1

您可以在 Eclipse java doument 中放入的代码行数是否有限制。

不准确。

编译方法中字节码的数量以及其他类似的东西是有限制的,但这些是由 Java 类文件格式(即 JVM 规范)而不是 Eclipse 强加的。

Eclipse 也可能需要更多内存,但我认为添加单个if语句不会可靠地触发这一点。(如果确实如此,异常会告诉您您内存不足......)

于 2012-04-21T04:12:58.440 回答