解决ANT出现的内存溢出问题
来源:互联网 发布:电路模拟仿真软件 编辑:程序博客网 时间:2024/06/07 01:50
笔者今天在使用ANT构建项目时,抛出了异常错误,java.lang.OutOfMemoryError:The system is out of resources。
在Ant中使用javac命令,抛出的java.lang.OutOfMemoryError错误和一般java应用抛出这个错误没两样。当执行JDK的javac命令,都是调用%JAVA_HOME%/lib/tools.jar包中com.sun.tools.javac.main.Main类。
在进行资料查阅和尝试后,发现解决一般有两种方案:
第一种:
通过修改ant的配置文件来指定虚拟机的内存大小,Window环境下修改bin目录下的ant.bat文件,可以直接在ant.bat的头文件处加上如下的指令:
set ANT_OPTS="-Xms800m -Xmx800m" ,设置的足够大,应该不会出现内存溢出的状态。(已验证,建议使用)。
第二种:
在javac节点处设置fork属性,同时指定memoryinitialsize、memorymaximumsize属性。例如:
1. <javac fork="true"
2. srcdir="${basedir}/src"
3. destdir="${basedir}/build/classes"
4. classpath="${project.classpath}"
5. memoryinitialsize="256m"
6. memorymaximumsize="256m">
7. </javac>
说明:
-fork:没有指定fork属性(默认为false),javac命令将和ant在同一个进程中执行,同时javac被分配的内存只有64MB,如果指定fork属性为true,javac命令将和ant不在同一个进程中执行,分配内存的大小将为memoryinitialsize、memorymaximumsize指定的大小。
-memoryinitialsize:javac占用的最小内存。
-memorymaximumsize:javac占用的最大内存。
- 解决ANT出现的内存溢出问题
- 解决Tomcat出现内存溢出的问题
- 解决内存溢出的问题
- 解决内存溢出问题
- 解决ANT与JUNIT出现的问题
- 解决POI解析excel出现内存溢出问题
- 关于生产环境出现tomcat的jvm 内存溢出问题的解决
- 如何解决weblogic的内存溢出问题
- 解决PHP内存溢出的问题
- 解决Eclipse的内存溢出问题
- 怎样追踪解决内存溢出的问题
- android解决内存溢出的问题
- 解决Tomcat应用的内存溢出问题
- android解决内存溢出的问题
- 解决ViewPager 内存溢出的问题
- 解决tomacat 内存溢出的问题
- android解决内存溢出的问题
- 解决Bitmap导致的内存溢出问题
- Self-introduction -- 温故知新 坚持不懈
- Android:获取状态栏高度
- iOS9 语言国际化-坑
- System.getProperty 属性设置
- 设置Listview中item背景颜色
- 解决ANT出现的内存溢出问题
- Web Service学习-CXF与Spring整合为JavaEE应用发布WebService(三)
- 制作带initrd的uImage
- 2 android 蓝牙通信编程
- Android 下拉刷新控件SwipeRefreshLayout
- cookie 基础
- iOS平台使用ffmpeg解码h264视频流
- RAID10与RAID01
- spring mvc 的 HandlerExceptionResolver 接口