Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/url/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java SonarQube CLI扫描程序无法保留堆_Java_Tfs_Sonarqube_Sonarqube Scan - Fatal编程技术网

Java SonarQube CLI扫描程序无法保留堆

Java SonarQube CLI扫描程序无法保留堆,java,tfs,sonarqube,sonarqube-scan,Java,Tfs,Sonarqube,Sonarqube Scan,我正在使用从Windows Build Agent(Windows 10数据中心64位)上的TFS实例启动的SonarQube CLI扫描程序来分析一个(相当大的)PHP/JS项目 这一方法过去很有效,最近SonarQube扫描仪报告作业失败: Could not reserve enough space for 3135488KB object heap 我试着设置 SONAR_SCANNER_OPTS = -Xmx4G 但这似乎没有任何效果 这是否可以连接到Java虚拟机(32位,最新版

我正在使用从Windows Build Agent(Windows 10数据中心64位)上的TFS实例启动的SonarQube CLI扫描程序来分析一个(相当大的)PHP/JS项目

这一方法过去很有效,最近SonarQube扫描仪报告作业失败:

Could not reserve enough space for 3135488KB object heap
我试着设置

SONAR_SCANNER_OPTS = -Xmx4G
但这似乎没有任何效果

这是否可以连接到Java虚拟机(32位,最新版本)?此外,TFS使用的最新SonarQube runner被列为3.1.1版,似乎是在问题开始时安装的。巧合

我是否可以/应该使用64位Java虚拟机


任何关于如何重新运行的建议都将不胜感激。

我们不希望扫描仪需要如此大的内存。即使对于一个大项目,大多数处理都是逐文件进行的,所以假设您需要的内存主要取决于最大文件的大小,而不是文件的数量。 请尽量减少Xmx参数(1G应该足够了)。我知道在Windows上,它可能会导致问题(特别是在32位上)


如果在分析过程中遇到OutOfMemory问题,请打开一个包含SonarQube用户组详细信息的新线程,以便我们进行调查。

如前所述使用
-Xmx4G
运行JVM如何?感谢您的建议。我的印象是(通过阅读)扫描仪试图估计手术所需的内存。我的问题通过切换到64位Java VM得到解决,尽管它能够在不更改参数的情况下保留堆。