欢迎光临
感受代码之美

使用ant打包出现OutOfMemoryError Java heap space错误

当使用Ant编译大量的Java源文件时,会出现java.lang.OutOfMemoryError:Java heap space异常,解决方法:

<target name="compile" depends="init,create-manifest" description="compile the java code and copy the config files">
        <javac srcdir="${src.dir}" destdir="${root.dir}/WEB-INF/classes" debug="true" fork="true" memoryMaximumSize="512m"  debuglevel="lines,vars,source" includeantruntime="on">
            <compilerarg line="-encoding UTF-8 -source 1.7 -target 1.7" />
            <classpath refid="classpath" />
        </javac>

        <copy todir="${root.dir}/WEB-INF/classes">
            <fileset dir="${src.dir}">
                <exclude name="**/*.java" />
            </fileset>
        </copy>

        <jar destfile="${root.dir}/WEB-INF/lib/${web.jar.filename}" index="true" manifest="${build.dir}/MANIFEST.MF">
            <fileset dir="${root.dir}/WEB-INF/classes" />
        </jar>

        <delete dir="${root.dir}/WEB-INF/classes" />

    </target>

在javac的选项里增加 fork="true" memoryMaximumSize="512m"来加在编译时的内存,实际上我只添加了fork="true"也可以。

参考:

  1. http://blog.csdn.net/stonree/article/details/48470129;
转载请注明来源:四个空格 » 使用ant打包出现OutOfMemoryError Java heap space错误

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址