gpt4 book ai didi

linux - Jenkins --> JUnit 在 Linux 上抛出 OutOfMemoryError PermGen

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:56:26 26 4
gpt4 key购买 nike

在构建期间,我在 Linux 上使用 Jenkins 运行了大约数千 (10K) 个 Junit,但它抛出了 OutOfMemoryError。

/builds/build.xml:113: java.lang.OutOfMemoryError: PermGen space
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:791)
at java.lang.ClassLoader.defineClass(ClassLoader.java:634)
at

在 configure --> "invoke ant"--> advance 上为 JUnit 设置了以下 JVM 配置

Xms512m -Xmx1024m -XX:MaxPermSize=1024m

即使将 PermGen 和 HeapSize 增加到 3072m,它在同一测试中仍然失败。

我是不是在错误的地方进行了配置?Jenkins 是否限制我将调用 ant 配置增加到超过特定限制?Jenkins配置是否也需要增加才能影响JUnit ant配置?如果是,有人可以建议如何增加 Jenkins 堆和 PermGen 配置吗?

最佳答案

当是PermGen space错误时,使用Xms & Xmx参数不会影响错误。我建议您将这些选项添加到 Jenkins 启动脚本,而不是在 Build > Invoke Ant > Advanced... > Java Options 中设置选项。

-XX:PermSize=512m -XX:MaxPermSize=1024m

如果需要,尝试增加 MaxPermSize 值。

关于linux - Jenkins --> JUnit 在 Linux 上抛出 OutOfMemoryError PermGen,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25568824/

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