用Ant打包一个比較大的项目的时候,遇到OutOfMemory的问题,求助于Google和百度,网上的解决方式非常多,可是个人认为不够具体全面。我的问题须要综合两种方法才解决。把方案记下来。以期帮助大众点滴。

错误类型

Ant编译任务报错OutOfMemoryError,提示信息显示是Java Heap Space。

解决方式

综合网上的两种方法,我的须要两个都用。分析一下,无非就是Java程序内存分配太小,不够用了。Java相应的调整參数为非标准參数-Xmx。

  1. 改动Ant命令脚本

    找到Ant的安装文件夹,进入bin文件夹。依据不同的环境。改动相应的脚本。Linux以下,打开ant脚本, 在ant_exec_args=之前加一行代码export ANT_OPTS=-Xmx1024m;Windows以下打开ant.bat, 在@echo off之后加一行代码set ANT_OPTS=-Xmx1024m
  2. 更改Ant的javac指令參数

    新增下面參数fork="true" memoryMaximumSize="1024m"。注意fork="true"必须与memoryMaxinumSize 配套使用。fork="true"是指单独起一个java进程才处理编译任务。

总结

Java的内存不够错误。都是调整java命令參数。-Xmx调整堆的最大值,与java heap space错误相应;-XX:PermSize<=size>调整永久区的最大值,与java permanent space错误相应,比如-XX:PermSize=64m,把永久区调整为64M。

Ant报错之out of memory的更多相关文章

  1. 推送GitHub报错 fatal: Out of memory, malloc failed 解决办法

    现象: 推送GitHub时,出现如下报错 fatal: Out of memory, malloc failed (tried to allocate XXXXXX bytes)error: fail ...

  2. git clone报错: Out of memory, malloc failed (tried to allocate 524288000 bytes)

    IDEA 拉取项目报错:Out of memory, malloc failed (tried to allocate 524288000 bytes) 执行 git config --global ...

  3. nginx报错zero size shared memory zone one

    为了限速,在虚拟主机中加上了一个参数:limit_conn one 1:结果导致重启nginx报错: zero size shared memory zone "one"解决办法是 ...

  4. tomcat启动报错There is insufficient memory for the Java Runtime Environment to continue

    tomcat启动报错后显示以下错误 ## There is insufficient memory for the Java Runtime Environment to continue.# Nat ...

  5. Robotium ant 报错Unable to find instrumentation info for: ComponentInfo{project/android.test.InstrumentationTestRunner}

    [echo] Running tests ... [exec] INSTRUMENTATION_STATUS: id=ActivityManagerService [exec] INSTRUMENTA ...

  6. 【转】eclipse运行 Ant报错Could not find the main class: org.eclipse.ant.internal.launching.remote.InternalAntRunner. Program

    原文地址:http://blog.csdn.net/jiangtaoking/article/details/49151763 Could not find the main class: org.e ...

  7. 报错:out of memory java heap space

    PermGen space的全称是Permanent Generation space,是指内存的永久保存区域OutOfMemoryError: PermGen space从表面上看就是内存益出,解决 ...

  8. git push的时候报错: Out of memory, malloc failed (tried to allocate 82037333 bytes)

    原因:上传的文件过大,这里我上传的文件有10G+所以报了上面的错误 解决方法:依次运行:git config --global pack.threads 1 git,git config --glob ...

  9. 安装Php时候报错信息:virtual memory exhausted: Cannot allocate memory (不能分配内存)

    原因是fileinfo这个函数在编译时非常消耗内存,而系统内存又不够了,所以才会出现此问题. 网上找了方法: 1,关闭其他占用大内存的进程. 2,在编译是添加参数 --disable-fileinfo

随机推荐

  1. Flume NG基本架构与Flume NG核心概念

    导读 Flume NG是一个分布式.可靠.可用的系统,它能够将不同数据源的海量日志数据进行高效收集.聚合.移动,最后存储到一个中心化数据存储系统中. 由原来的Flume OG到现在的Flume NG, ...

  2. jq-文本框只能输入数字

    <input type="text" onKeyUp="value=value.replace(/\D/g,'')"  /> onKeyUp: 当输 ...

  3. Java——Spring注解

    Spring常用注解使用注解来构造IoC容器用注解来向Spring容器注册Bean.需要在applicationContext.xml中注册<context:component-scan bas ...

  4. Android基础TOP2_1:输出系统时间

    Activity: <TextView android:id="@+id/tv" android:layout_width="wrap_content" ...

  5. MySQL 多表批量更新

    使用inner join 进行表更新sql 与mysql 的区别: SQL UPDATE W SET W.字段=新数据 FROM 表a W INNER JOIN 表B d ON W.wID=D.wid ...

  6. SQL基本操作——表的创建

    通过代码方式创建数据库 create database MyDatabaseNew on primary ( --名字 name='MyDatabaseNew_data', --路径 filename ...

  7. (转) Arcgis4js实现链家找房的效果

    http://blog.csdn.net/gisshixisheng/article/details/71009901 概述 买房的各位亲们不知是否留意过链家的"地图找房",这样的 ...

  8. 28 I/O限制的异步操作

    28.2 C#的异步函数 private static async Task<string> IssueClientRequestAsync(string serverName, stri ...

  9. Promise嵌套问题/async await执行顺序

    /* 原则: 执行完当前promise, 会把紧挨着的then放入microtask队尾, 链后面的第二个then暂不处理分析, */ 一. new Promise((resolve, reject) ...

  10. php第十七节课

    分页查询 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3 ...