Размер кучи Java amxmlc без муравья
На ровном месте перестала работать моя задача сборки моего приложения AIR:
/opt/flex-sdk/bin/amxmlc \
-optimize=true \
-define+=CONFIG::DEBUG,false \
-define+=CONFIG::RELEASE,true \
src/Main.as -output bin/Main.swf
Loading configuration file /opt/flex-sdk/frameworks/air-config.xml
Error: Java heap space
make: *** [bin/Main.swf] Error 1
Каждое упоминание об этом в Интернете применимо только к построению через ANT. Я знаю, что мне нужно увеличить размер кучи, но понятия не имею, с чего начать.
1 ответ
Решение
После поиска по всем файлам конфигурации, я понял, что вы можете редактировать /opt/flex-sdk/bin/amxmlc
что в свою очередь указывает на /opt/flex-sdk/bin/mxmlc
(внизу файла):
VMARGS="-Xmx384m -Dsun.io.useCanonCaches=false -Djava.util.Arrays.useLegacyMergeSort=true "
java $VMARGS $D32 $SETUP_SH_VMARGS -jar "$FLEX_HOME/lib/mxmlc.jar" +flexlib="$FLEX_HOME/frameworks" "$@"
Как вы можете видеть, VMARGS установлены здесь, чтобы максимизировать кучу на 384 м. Мое исправление было до 1024м, и все работало нормально.