Java OutOfMemory-Sonar无法分析项目源代码,它可以';我找不到问题
我正在IntelliJ Idea的一个Java项目中运行SonarLint插件 当我请求对整个项目进行代码分析时,我得到以下消息: Sonarint分析失败:Java堆空间 以下是日志:Java OutOfMemory-Sonar无法分析项目源代码,它可以';我找不到问题,java,intellij-idea,sonarqube,sonarlint,Java,Intellij Idea,Sonarqube,Sonarlint,我正在IntelliJ Idea的一个Java项目中运行SonarLint插件 当我请求对整个项目进行代码分析时,我得到以下消息: Sonarint分析失败:Java堆空间 以下是日志: Error running SonarLint analysis java.lang.OutOfMemoryError: Java heap space java.lang.OutOfMemoryError: Java heap space at java.util.Arrays.copyOf(A
Error running SonarLint analysis
java.lang.OutOfMemoryError: Java heap space
java.lang.OutOfMemoryError: Java heap space
at java.util.Arrays.copyOf(Arrays.java:3181)
at java.util.Vector.grow(Vector.java:266)
at java.util.Vector.ensureCapacityHelper(Vector.java:246)
at java.util.Vector.addElement(Vector.java:620)
at com.sun.org.apache.xml.internal.dtm.ref.dom2dtm.DOM2DTM.addNode(DOM2DTM.java:247)
at com.sun.org.apache.xml.internal.dtm.ref.dom2dtm.DOM2DTM.nextNode(DOM2DTM.java:543)
at com.sun.org.apache.xml.internal.dtm.ref.DTMDefaultBase._nextsib(DTMDefaultBase.java:567)
at com.sun.org.apache.xml.internal.dtm.ref.DTMDefaultBase.getNextSibling(DTMDefaultBase.java:1142)
at com.sun.org.apache.xml.internal.dtm.ref.DTMDefaultBaseTraversers$ChildTraverser.next(DTMDefaultBaseTraversers.java:465)
at com.sun.org.apache.xpath.internal.axes.AxesWalker.getNextNode(AxesWalker.java:337)
at com.sun.org.apache.xpath.internal.axes.AxesWalker.nextNode(AxesWalker.java:365)
at com.sun.org.apache.xpath.internal.axes.WalkingIterator.nextNode(WalkingIterator.java:197)
at com.sun.org.apache.xpath.internal.axes.NodeSequence.nextNode(NodeSequence.java:344)
at com.sun.org.apache.xpath.internal.axes.NodeSequence.runTo(NodeSequence.java:503)
at com.sun.org.apache.xml.internal.dtm.ref.DTMNodeList.<init>(DTMNodeList.java:83)
at com.sun.org.apache.xpath.internal.objects.XNodeSet.nodelist(XNodeSet.java:348)
at com.sun.org.apache.xpath.internal.jaxp.XPathExpressionImpl.getResultAsType(XPathExpressionImpl.java:364)
at com.sun.org.apache.xpath.internal.jaxp.XPathExpressionImpl.eval(XPathExpressionImpl.java:110)
at com.sun.org.apache.xpath.internal.jaxp.XPathExpressionImpl.evaluate(XPathExpressionImpl.java:191)
at org.sonar.java.xml.XmlCheckContextImpl.evaluate(XmlCheckContextImpl.java:82)
at org.sonar.java.xml.XmlCheckContextImpl.evaluateOnDocument(XmlCheckContextImpl.java:76)
at org.sonar.java.checks.xml.spring.SingleConnectionFactoryCheck.scanFileWithXPathExpressions(SingleConnectionFactoryCheck.java:45)
at org.sonar.java.xml.XPathXmlCheck.scanFile(XPathXmlCheck.java:36)
at org.sonar.java.xml.XmlAnalyzer.simpleScanAsXmlFile(XmlAnalyzer.java:107)
at org.sonar.java.xml.XmlAnalyzer.simpleScan(XmlAnalyzer.java:97)
at org.sonar.java.xml.XmlAnalyzer.scan(XmlAnalyzer.java:81)
at org.sonar.plugins.java.XmlFileSensor.execute(XmlFileSensor.java:55)
at org.sonarsource.sonarlint.core.analyzer.sensor.NewSensorsExecutor.executeSensor(NewSensorsExecutor.java:72)
at org.sonarsource.sonarlint.core.analyzer.sensor.NewSensorsExecutor.execute(NewSensorsExecutor.java:63)
at org.sonarsource.sonarlint.core.analyzer.sensor.PhaseExecutor.execute(PhaseExecutor.java:36)
at org.sonarsource.sonarlint.core.container.analysis.AnalysisContainer.doAfterStart(AnalysisContainer.java:142)
at org.sonarsource.sonarlint.core.container.ComponentContainer.startComponents(ComponentContainer.java:125)
运行Sonarint分析时出错
java.lang.OutOfMemoryError:java堆空间
java.lang.OutOfMemoryError:java堆空间
位于java.util.Arrays.copyOf(Arrays.java:3181)
位于java.util.Vector.grow(Vector.java:266)
位于java.util.Vector.ensureCapacityHelper(Vector.java:246)
在java.util.Vector.addElement(Vector.java:620)中
在com.sun.org.apache.xml.internal.dtm.ref.dom2dtm.dom2dtm.addNode(dom2dtm.java:247)
位于com.sun.org.apache.xml.internal.dtm.ref.dom2dtm.dom2dtm.nextNode(dom2dtm.java:543)
位于com.sun.org.apache.xml.internal.dtm.ref.DTMDefaultBase.\u nextsib(DTMDefaultBase.java:567)
位于com.sun.org.apache.xml.internal.dtm.ref.DTMDefaultBase.getNextSibling(DTMDefaultBase.java:1142)
位于com.sun.org.apache.xml.internal.dtm.ref.DTMDefaultBaseTraversers$ChildTraverser.next(DTMDefaultBaseTraversers.java:465)
位于com.sun.org.apache.xpath.internal.axes.AxesWalker.getNextNode(AxesWalker.java:337)
位于com.sun.org.apache.xpath.internal.axes.AxesWalker.nextNode(AxesWalker.java:365)
位于com.sun.org.apache.xpath.internal.axes.WalkingIterator.nextNode(WalkingIterator.java:197)
位于com.sun.org.apache.xpath.internal.axes.NodeSequence.nextNode(NodeSequence.java:344)
位于com.sun.org.apache.xpath.internal.axes.NodeSequence.runTo(NodeSequence.java:503)
位于com.sun.org.apache.xml.internal.dtm.ref.DTMNodeList(DTMNodeList.java:83)
位于com.sun.org.apache.xpath.internal.objects.XNodeSet.nodelist(XNodeSet.java:348)
位于com.sun.org.apache.xpath.internal.jaxp.XPathExpressionImpl.getResultAsType(XPathExpressionImpl.java:364)
位于com.sun.org.apache.xpath.internal.jaxp.XPathExpressionImpl.eval(XPathExpressionImpl.java:110)
位于com.sun.org.apache.xpath.internal.jaxp.XPathExpressionImpl.evaluate(XPathExpressionImpl.java:191)
位于org.sonar.java.xml.XmlCheckContextImpl.evaluate(XmlCheckContextImpl.java:82)
位于org.sonar.java.xml.XmlCheckContextImpl.evaluateDocument(XmlCheckContextImpl.java:76)
位于org.sonar.java.checks.xml.spring.SingleConnectionFactoryCheck.ScanFileWithXPATExpressions(SingleConnectionFactoryCheck.java:45)
位于org.sonar.java.xml.XPathXmlCheck.scanFile(XPathXmlCheck.java:36)
位于org.sonar.java.xml.XmlAnalyzer.SimpleScansXMLFile(XmlAnalyzer.java:107)
位于org.sonar.java.xml.XmlAnalyzer.simpleScan(XmlAnalyzer.java:97)
位于org.sonar.java.xml.XmlAnalyzer.scan(xmlayzer.java:81)
位于org.sonar.plugins.java.XmlFileSensor.execute(XmlFileSensor.java:55)
位于org.sonarsource.sonarlint.core.analyzer.sensor.NewSensorsExecutor.executeSensor(NewSensorsExecutor.java:72)
位于org.sonarsource.sonarlint.core.analyzer.sensor.NewSensorsExecutor.execute(NewSensorsExecutor.java:63)
位于org.sonarsource.sonarlint.core.analyzer.sensor.PhaseExecutor.execute(PhaseExecutor.java:36)
位于org.sonarsource.sonarlint.core.container.analysis.AnalysisContainer.doAfterStart(AnalysisContainer.java:142)
位于org.sonarsource.sonarint.core.container.ComponentContainer.startComponents(ComponentContainer.java:125)
如何增加内存?Eclipse:
运行
-->运行配置
-->然后在maven build
-->下选择项目,然后选择选项卡“JRE”->然后输入-Xmx1024m
运行
-->运行配置
-->选择“JRE”
选项卡-->然后输入-Xmx1024m
我建议你用它来检查你需要多少内存,这样你就不会分配太多。
我错过了IntelliJ的创意: 你可以得到信息
请确保将堆添加到正确的位置。您需要在IDEA的Ant工具窗口中单击“属性”按钮并编辑“最大堆大小(Mb)”字段。Eclipse:
Run
-->Run Configurations
-->然后在maven build
-->下选择项目,然后选择选项卡“JRE”->然后输入-Xmx1024m
运行
-->运行配置
-->选择“JRE”
选项卡-->然后输入-Xmx1024m
我建议你用它来检查你需要多少内存,这样你就不会分配太多。
我错过了IntelliJ的创意: 你可以得到信息
请确保将堆添加到正确的位置。您需要在IDEA的Ant工具窗口中单击“属性”按钮并编辑“最大堆大小(Mb)”字段。您看到我询问的是SonarLint IntelliJ插件吗?它使用“Java堆空间”很明显,它使用的是堆空间。但是,您提供的增加成本的方法不起作用。“运行-->运行配置-->选择“JRE”。IntelliJ中没有指向此的路径。我把SonarLint作为IntelliJ插件运行,而不是作为构建过程中的任务运行。你看到了吗,我问的是SonarLint IntelliJ插件吗?它使用的是“Java堆空间”。很明显,它使用的是堆空间。但是,您提供的增加成本的方法不起作用。“运行-->运行配置-->选择“JRE”。IntelliJ中没有指向此的路径。我运行SonarLint,作为IntelliJ插件,而不是作为构建过程中的任务。