我们正在使用Eclipselink并需要编写代码以便延迟获取工作属性。
在编织过程中,我收到以下错误:
weave:
BUILD FAILED
java.lang.OutOfMemoryError: PermGen space
我的ant构建文件中有以下任务:
<target name="define_weave_task" description="task definition for EclipseLink static weaving">
<taskdef name="eclipse_weave" classname="org.eclipse.persistence.tools.weaving.jpa.StaticWeaveAntTask"/>
</target>
<target name="weave" depends="compile,define_weave_task" description="weave eclipselink code into compiled classes">
<eclipse_weave source="${path.classes}" target="${path.classes}">
<classpath refid="compile.classpath"/>
</eclipse_weave>
</target>
它长期以来一直很好用。现在要编织的代码量增加了,我得到了PermGen错误。我希望能够增加烫发空间的数量。
如果我正在进行编译,我可以通过编译器参数(例如<compilerarg value="-XX:MaxPermSize=256M"/>
)启动perm空间,但这似乎不是eclipselink编织的有效参数。
如何为编织提高烫发空间?
答案 0 :(得分:1)
如果您在“与Eclipse相同的JRE中”运行Ant任务,那么Eclipse本身就必须启动肥胖的permgen。
答案 1 :(得分:0)
答案是在运行ant之前在ANT_OPTS环境变量中设置max perm memory参数。
export ANT_OPTS="-XX:MaxPermSize=256m"