IDEA导入大型项目在编译时出现资源不足

原因分析

1、IDEA启动参数配置不当

在大多数情况下,我们安装了IDEA是保存默认的启动参数。对于一般的小型项目是能正常编译和运行的,但是,当项目比较大(源码1G左右),使用IDEA编译时就会报“资源不足”:

  1. 检查IDEA虚拟机启动配置文件的配置(idea.exe.vmoptions/idea64.exe.vmoptions,根据操作系统而定);
	-server
   -Xms128m
   -Xmx512m
   -XX:ReservedCodeCacheSize=240m
   -XX:+UseConcMarkSweepGC
   -XX:SoftRefLRUPolicyMSPerMB=50
   -ea
   -Dsun.io.useCanonCaches=false
   -Djava.net.preferIPv4Stack=true
   -Djdk.http.auth.tunneling.disabledSchemes=""
   -XX:+HeapDumpOnOutOfMemoryError
   -XX:-OmitStackTraceInFastThrow
  1. 可见以上配置是没办法满足大型项目的编译与运行的, 将-Xmx调大 ,建议将-Xms(初始化内存)和-Xmx(最大内存)设置成一样的,避免重新分配内存是出现卡顿;
  2. -Xmx参数的调整需要根据计算机内存而来,例如:计算机内存为8G,可设置**-Xmx4096m**;
  3. 如果以上操作完成了还是不行的话,我们就继续看下面;

2、编译器Heap参数设置不当

  1. 查看IDEA编译器的Heap参数
    在这里插入图片描述
  2. 默认情况下为700M,可能不满足编译过程所需,一般设置为1500M
    在这里插入图片描述
  3. 如果编译还是报资源不足,就继续调大heap的参数

3、如果是Web项目,在运行时会做编译、构建Artifacts,编译很快就完成了,但是构建Artifacts却很慢

  1. 设置编译输出的路径为/WEB-INF/classes
    在这里插入图片描述
  2. 设置Artifacts的Web exploded为WebRoot
    在这里插入图片描述
  3. 设置Tomcat启动的VM参数,删除Build Artifacts
    在这里插入图片描述

4、如果编译还是不行,可使用ant对项目进行编译

  1. 生成build.xml
    在这里插入图片描述
  2. IDEA添加ant
    在这里插入图片描述
  3. 设置ant编译参数
    在这里插入图片描述
  4. 设置ant编译使用的JDK
    在这里插入图片描述
  5. 注意build.xml中编译节点,建议设置source=“1.7” target=“1.7”,以避免高版本JDK环境编译失败。
  6. 删除Build,添加Run Ant target
    在这里插入图片描述

总结

环境搭建使用的是IDEA2019,可能和IDEA其他版本略有不同。若有叙述不当之处,请见谅。若有问题,请留言。

  • 3
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值