scalac:建设微风期间内存不足

时间:2018-10-05 14:01:57

标签: scala intellij-idea sbt scala-breeze

我正在尝试使用Intellij IDEA自己构建Breeze

这是我的环境
Intellij版本:2018.2.1社区
作业系统:Windows 10 64位
JDK版本:1.8.0_181
scala SDK版本:2.12
sbt版本:对不起..找不到它。

首先,它始终显示错误消息:java.lang.OutOfMemoryError:超出了GC开销限制

我所做的:
1.在“自定义VM选项”中,添加“ Xmx2048m”

2.在Settings(ctrl + alt + s)=> Build,Execution,DeployMent => Build Tools => sbt
中 将“最大堆大小”更改为9196(非常大...)

3.在Settings(ctrl + alt + s)=> Build,Execution,DeployMent => Compiler => Scala Compiler =>其他编译器选项中,添加“ -J-Xmx4096m”

4.在Scala Compiler => Scala编译服务器中,将JVM最大堆大小更改为4096

完成这些操作后,由于编译期间内存不足,我仍然有一些失败的机会。
我错过任何重要的东西吗?

1 个答案:

答案 0 :(得分:2)

似乎您正在使用IntelliJ内部构建系统。而是尝试将IntelliJ配置为使用系统SBT,如下所示:

  1. 启用settingimport Adapter from 'enzyme-adapter-react-16';
  2. 在项目的根目录下创建41 int numRows = C/(K*L); 42 int numCols = K; 43 44 tagArray = (int **) malloc(numRows*sizeof(int)); // creates rows in array with C/K*L rows 45 lruArray = (int **) malloc(numRows*sizeof(int)); // creates rows in array with C/K*L rows 46 47 for(int i = 0; i<numRows;i++) 48 { 49 *(tagArray + i) = (int*) malloc(numCols*sizeof(int)); // fills each row with K columns 50 *(lruArray + i) = (int*) malloc(numCols*sizeof(int)); // fills each row with K columns 51 } 52 53 for(int i = 0; i<numRows; i++) 54 for(int j = 0; j<numCols; j++) 55 { 56 tagArray[i][j] = -1; 57 lruArray[i][j] = -1; 58 } 59 文件:

    Use sbt shell for build and import (required sbt 0.13.5+)
  3. .jvmopts工具窗口中,单击-Xmx4G -XX:MaxMetaspaceSize=4G 节点,然后选择要运行的任务。注意,来自主菜单的构建命令,例如sbt projects,现在也应该挂接到系统SBT
  4. sbt tasks工具窗口中监视执行输出