2

在大多数现代 IDE 中,您可以设置一个参数以确保 javac 获得足够的堆内存来进行编译。由于不值得在这里讨论的原因,我们暂时与 JBuilder 2005/2006 相关联,而且源代码的数量似乎已经超过了 javac 可以处理的数量。

请保留特定于 JBuilder 2005/2006 javac 的答案(我们现在无法迁移,并且 Borland Make 编译器不正确支持 Java 1.6)

我意识到应该如何以及应该将哪些参数传递给 javac,问题是 IDE 似乎不允许在任何地方设置这些参数。很多配置都隐藏在 Jbuilder Install\bin*.config 文件中,我觉得答案可能在某个地方,但还没有找到。

4

6 回答 6

7

你找到解决这个问题的好方法了吗?

我有同样的问题,我找到的唯一解决方案如下: 环境变量 JAVA_TOOL_OPTIONS 可用于为 JVM 提供参数。

http://java.sun.com/javase/6/docs/platform/jvmti/jvmti.html#tooloptions

我创建了一个包含以下内容的批处理文件“JBuilderw.bat”:


设置 JAVA_TOOL_OPTIONS=-Xmx256m

JBuilderw.exe


每次我使用这个批处理文件 env.var 启动 JBuilder。JAVA_TOOL_OPTIONS 将被设置,javac.exe 将接收设置。JVM 在末尾显示以下消息:“Picked up JAVA_TOOL_OPTIONS: -Xmx256m”

缺点:所有由 JBuilder 启动的虚拟机都将获得该设置。:(

谢谢,JB

于 2009-09-03T11:51:46.567 回答
0

看看http://javahowto.blogspot.com/2006/06/fix-javac-java-lang-outofmemoryerror.html

您需要传递给 JBuilder 的 javac 的参数是“-J-Xms256m -J-Xmx256m”。用适合您情况的任何东西替换 256m。另外,删除引号。

这应该适用于 java 1.4、java 1.5 及更高版本。

BR,~A

于 2008-09-19T18:08:48.043 回答
0

“我意识到应该如何以及应该将哪些参数传递给 javac,问题是 IDE 似乎不允许在任何地方设置这些参数。”

我现在意识到你只知道如何传递正确的参数而不是在哪里/如何传递这些参数:-(

这个怎么样:你能找到borland使用的JAVA_HOME/bin目录在哪里吗?如果是,那么您可以用 javac.bat 重命名 javac.exe(比如说 javacnew.exe),这反过来又会调用 javacnew.exe(以及传递所需的参数)?

于 2008-09-19T19:24:27.333 回答
0

我不知道这是否会有所帮助,因为我不使用 Borland,但在 Eclipse 中,这是一个附加到要运行的程序的设置。您在 IDE 中运行的每个程序都有特定的配置,包括 VM 的参数。有没有类似的东西?

于 2008-12-07T20:58:37.980 回答
0

你有一个位于 JBuilder2005/bin/ 中的 jdk.config 文件吗?

您应该能够修改该文件中的 vm 参数,例如:

vmparam -Xms256m 
vmparam -Xmx256m

让我知道这是否有效,我在一个讨论在 JBuilder 2005 中编辑相关设置的页面上找到了它。

于 2009-02-24T03:10:02.423 回答
0

编辑jbuilder.config文件。把这两行注释掉:

  • 最大 75%

  • vmmemmin 32m

他们应该是<1Gb and with a >1Gb PC,75% 太大了吗?

于 2012-06-09T07:37:57.107 回答