即使使用-Xmx1024m -XX,Maven flexmojos-maven-plugin也会因OutOfMemoryError而失败:MaxPermSize = 512m

时间:2012-08-23 17:54:34

标签: flex maven flexmojos

我将回答我自己的问题,为下一个打这个的人提供面包屑:

问题

在使用

的flexmojos-maven-plugin期间,x86Linux Maven构建失败
load-config+=...flex-config.xml -static-link-runtime-shared-libraries...
-metadata.language+=en_US 
[INFO] Loading configuration file .../flex-config.xml

# There is insufficient memory for the Java Runtime Environment to continue.
# Native memory allocation (malloc) failed to allocate 37064 bytes for Chunk::new
[ERROR] OutOfMemoryError -> [Help 1]

1 个答案:

答案 0 :(得分:0)

<强>解决方案

增加系统交换。 flexmojos调用了flex编译器(一个本机可执行文件,需要在为JVM分配的内存之外的内存)。如果内存不足并且无法交换maven的jvm,则flex编译器会失败。

我添加了额外的交换,并且能够成功完成构建。

来自enter link description here

# create swap file
dd if=/dev/zero of=/opt/swapfile.1 bs=1M count=2048
# Set Permissions
chmod 600 /opt/swapfile.1
# Define as swap
mkswap /opt/swapfile.1
# Add to active swap
swapon /opt/swapfile.1
# Verify
free -m