Java 在大内存PC上单击“查找使用情况”(或Alt+F7)时出现Intellij IDEA14堆栈溢出异常

Java 在大内存PC上单击“查找使用情况”(或Alt+F7)时出现Intellij IDEA14堆栈溢出异常,java,intellij-idea,Java,Intellij Idea,我在Windows 7 PC上,有32G内存、Intel i5 3.3GHz CPU和512G SSD磁盘,但当我单击“查找使用方法”时,无论我如何重新配置vm参数,始终会给我stackoverflow异常 以下是IDEA启动日志: 2014-12-11 10:53:22633[27]INFO-com.intellij.idea.Main-IDE:intellij idea build IU-139.659.22014年12月06日00:00 2014-12-11 10:53:22633[27]

我在Windows 7 PC上,有32G内存、Intel i5 3.3GHz CPU和512G SSD磁盘,但当我单击“查找使用方法”时,无论我如何重新配置vm参数,始终会给我stackoverflow异常

以下是IDEA启动日志: 2014-12-11 10:53:22633[27]INFO-com.intellij.idea.Main-IDE:intellij idea build IU-139.659.22014年12月06日00:00 2014-12-11 10:53:22633[27]INFO-com.intellij.idea.Main-OS:windows76.1,amd64 2014-12-11 10:53:22633[27]INFO-com.intellij.idea.Main-JRE:1.8.0_20-b26 Oracle公司 2014-12-11 10:53:22633[27]INFO-com.intellij.idea.Main-JVM:25.20-b23 Java HotSpotTM 64位服务器虚拟机 2014-12-11 10:53:22,634 [ 28]INFO-com.intellij.idea.Main-JVM参数:-Xms128m-Xmx750m-XX:MaxPermSize=1024m-XX:ReservedCodeCacheSize=512m-ea-Dsun.io.useCanonCaches=false-Djava.net.preferIPv4Stack=true-djse.enableSNIExtension=false-XX:+useConcmarkswipegc-XX:softrefrupolicymspermb=50-Xbootclasspath/a:C:\Program Files x86\JetBrains\intellij idea14.0.2\lib\boot.jar-Didea.path.selector=IntelliJIdea14 2014-12-11 10:53:22688[82]INFO-com.intellij.idea.Main-JNA库在53毫秒内加载了64位 2014-12-11 10:53:22689[83]信息-penapi.util.io.win32.IdeaWin32-Windows本机文件系统正在运行 2014-12-11 10:53:22690[84]INFO-com.intellij.idea.Main-使用FocusKiller库防止焦点窃取。

下面是当我按Alt+F7时超过1000行堆栈跟踪的例外,请帮助,谢谢

java.lang.StackOverflower错误 位于com.intellij.util.containers.ConcurrentHashMap.computeHashCodeConcurrentHashMap.java:3821 位于com.intellij.util.containers.ConcurrentHashMap.hashConcurrentHashMap.java:3837 位于com.intellij.util.containers.ConcurrentHashMap.getConcurrentHashMap.java:939 位于com.intellij.util.containers.ConcurrentRefValueHashMap.getConcurrentRefValueHashMap.java:79 位于com.intellij.util.containers.ConcurrentWeakValueHashMap.getConcurrentWeakValueHashMap.java:32 位于com.intellij.psi.impl.file.impl.FileManagerImpl.findCachedViewProviderFileManagerImpl.java:183 位于com.intellij.psi.impl.file.impl.FileManagerImpl.findViewProviderFileManagerImpl.java:171 位于com.intellij.psi.impl.PsiManagerImpl.findViewProviderPsiManagerImpl.java:190 在com.intellij.psi.impl.source.PsiFileImpl.isPsiUpToDatePsiFileImpl.java:167 位于com.intellij.psi.impl.source.PsiFileImpl.isValidPsiFileImpl.java:163 在com.intellij.psi.impl.source.tree.SharedImplUtil.isValidSharedImplUtil.java:78 位于com.intellij.psi.impl.source.tree.compositesilement.isValidCompositePsiElement.java:128 位于com.intellij.lang.javascript.frameworks.mozilla.XulLanguageInjector.getLanguagesToInjectXulLanguageInjector.java:42 位于com.intellij.psi.impl.source.tree.injected.InjectedPsiCachedValueProvider$MyInjProcessor.processInjectedPsiCachedValueProvider.java:82 在com.intellij.psi.impl.source.tree.injected.InjectedLanguageManagerImpl.processInPlaceInjectorsForInjectedLanguageManagerImpl.java:446 在com.intellij.psi.impl.source.tree.injected.InjectedPsiCachedValueProvider.doComputeInjectedPsiCachedValueProvider.java:62 位于com.intellij.psi.impl.source.tree.injected.InjectedLanguageUtil.aInjectedLanguageUtil.java:315 在com.intellij.psi.impl.source.tree.injected.InjectedLanguageUtil.EnumeratedInjectedLanguageUtil.java:144 在com.intellij.psi.impl.source.tree.injected.InjectedLanguageUtil.EnumeratedInjectedLanguageUtil.java:117 位于com.intellij.psi.impl.source.tree.injected.InjectedLanguageManagerImpl.getInjectedPsiFilesInjectedLanguageManagerImpl.java:459 位于com.intellij.spring.model.values.PropertyValueConverter.getConvertersPropertyValueConverter.java:54 位于com.intellij.util.xml.WrappingConverter.fromStringWrappingConverter.java:35 位于com.intellij.util.xml.impl.GetInvocation.agetinovation.java:102 位于com.intellij.util.xml.impl.GetInvocation.agetinovation.java:77 在com.intellij.util.xml.impl.GetInvocation.invokeGetInvocation.java:65 在com.intellij.util.xml.impl.DomInvocationHandler.invokedominationHandler.java:689 在com.intellij.util.xml.generictTributeValue$$EnhancerByGlib$$6007b85d.getValue上 位于com.intellij.spring.factories.resolvers.MethodInvokingFactoryBeanTypeResolver.getObjectTypeMethodInvokingFactoryBeanTypeResolver.java:27 位于com.intellij.spring.factories.SpringFactoryBeansManagerImpl.getProductTypeClassNamesSpringFactoryBeansManagerImpl.java:149 位于com.intellij.spring.factories.SpringFactoryBeansManagerImpl.getProductTypesSpringFactoryBeansManagerImpl.java:107 在com.intellij.spring.model.SpringFactoryBeanEffectiveTypesProviders.ProcessEffectiveTypesSpringFactoryBeanEffectiveTypesProviders.java:18 位于com.intellij.spring.model.BeanServiceImpl.getEf FectiveBeantTypesBeanServiceImpl.java:40 在com.intellij.spring.model.SpringBaseBeanPointer$2.ComputesSpringBaseBeanPointer.java:48 位于com.intellij.psi.impl.PsiCachedValueImpl.doComputePsiCachedValueImpl.java:49 位于com.intellij.util.CachedValueBase.getValueWithLockCachedValueBase.java:200 在com.intellij.psi.impl.PsiCachedValueImpl.getValuePsiCachedValueImpl.java上:38 位于com.intellij.spring.model.SpringBaseBeanPointer.geteffectivebeantypesspringbasebeanpointer.java:53 在com.intellij.spring.model.converters.specific.MethodInvokingJobDetailFactoryBeanConverter.getPsiClassMethodInvokingJobDetailFactoryBeanConverter.java:34 位于com.intellij.spring.model.converters.PsiMethodConverter.fromStringPsiMethodConverter.java:70 位于com.intellij.spring.model.converters.PsiMethodConverter.fromStringPsiMethodConverter.java:44 位于com.intellij.util.xml.WrappingConverter.fromStringWrappingConverter.java:38 位于com.intellij.util.xml.impl.GetInvocation.agetinovation.java:102 位于com.intellij.util.xml.impl.GetInvocation.agetinovation.java:77 在com.intellij.util.xml.impl.GetInvocation.invokeGetInvocation.java:65 在com.intellij.util.xml.impl.DomInvocationHandler.invokedominationHandler.java:689 在com.intellij.util.xml.generictTributeValue$$EnhancerByGlib$$6007b85d.getValue上 位于com.intellij.spring.factories.resolvers.MethodInvokingFactoryBeanTypeResolver.getObjectTypeMethodInvokingFactoryBeanTypeResolver.java:27 位于com.intellij.spring.factories.SpringFactoryBeansManagerImpl.getProductTypeClassNamesSpringFactoryBeansManagerImpl.java:149 位于com.intellij.spring.factories.SpringFactoryBeansManagerImpl.getProductTypesSpringFactoryBeansManagerImpl.java:107 在com.intellij.spring.model.SpringFactoryBeanEffectiveTypesProviders.ProcessEffectiveTypesSpringFactoryBeanEffectiveTypesProviders.java:18 在com.intellij.spring.model.BeanServiceImpl.getEffectiveBeanTypesBeanServiceImpl.java上:40 在com.intellij.spring.model.SpringBaseBeanPointer$2.ComputesSpringBaseBeanPointer.java:48 位于com.intellij.psi.impl.PsiCachedValueImpl.doComputePsiCachedValueImpl.java:49 位于com.intellij.util.CachedValueBase.getValueWithLockCachedValueBase.java:200 在com.intellij.psi.impl.PsiCachedValueImpl.getValuePsiCachedValueImpl.java上:38 位于com.intellij.spring.model.SpringBaseBeanPointer.geteffectivebeantypesspringbasebeanpointer.java:53 在com.intellij.spring.model.converters.specific.MethodInvokingJobDetailFactoryBeanConverter.getPsiClassMethodInvokingJobDetailFactoryBeanConverter.java:34 位于com.intellij.spring.model.converters.PsiMethodConverter.fromStringPsiMethodConverter.java:70 位于com.intellij.spring.model.converters.PsiMethodConverter.fromStringPsiMethodConverter.java:44 位于com.intellij.util.xml.WrappingConverter.fromStringWrappingConverter.java:38 位于com.intellij.util.xml.impl.GetInvocation.agetinovation.java:102 位于com.intellij.util.xml.impl.GetInvocation.agetinovation.java:77 在com.intellij.util.xml.impl.GetInvocation.invokeGetInvocation.java:65 在com.intellij.util.xml.impl.DomInvocationHandler.invokedominationHandler.java:689 在com.intellij.util.xml.generictTributeValue$$EnhancerByGlib$$6007b85d.getValue上 位于com.intellij.spring.factories.resolvers.MethodInvokingFactoryBeanTypeResolver.getObjectTypeMethodInvokingFactoryBeanTypeResolver.java:27 位于com.intellij.spring.factories.SpringFactoryBeansManagerImpl.getProductTypeClassNamesSpringFactoryBeansManagerImpl.java:149 位于com.intellij.spring.factories.SpringFactoryBeansManagerImpl.getProductTypesSpringFactoryBeansManagerImpl.java:107 在com.intellij.spring.model.SpringFactoryBeanEffectiveTypesProviders.ProcessEffectiveTypesSpringFactoryBeanEffectiveTypesProviders.java:18 在com.intellij.spring.model.BeanServiceImpl.getEffectiveBeanTypesBeanServiceImpl.java上:40 在com.intellij.spring.model.SpringBaseBeanPointer$2.ComputesSpringBaseBeanPointer.java:48 位于com.intellij.psi.impl.PsiCachedValueImpl.doComputePsiCachedValueImpl.java:49 位于com.intellij.util.CachedValueBase.getValueWithLockCachedValueBase.java:200 在com.intellij.psi.impl.PsiCachedValueImpl.getValuePsiCachedValueImpl.java上:38 位于com.intellij.spring.model.SpringBaseBeanPointer.geteffectivebeantypesspringbasebeanpointer.java:53 在com.intellij.spring.model.converters.specific.MethodInvokingJobDetailFactoryBeanConverter.getPsiClassMethodInvokingJobDetailFactoryBeanConverter.java:34 位于com.intellij.spring.model.converters.PsiMethodConverter.fromStringPsiMethodConverter.java:70 位于com.intellij.spring.model.converters.PsiMethodConverter.fromStringPsiMethodConverter.java:44 位于com.intellij.util.xml.WrappingConverter.fromStringWrappingConverter.java:38 位于com.intellij.util.xml.impl.GetInvocation.agetinovation.java:102 位于com.intellij.util.xml.impl.GetInvocation.agetinovation.java:77 在com.intellij.util.xml.impl.GetInvocation.invokeGetInvocation.java:65 在com.intellij.util.xml.impl.DomInvocationHandler.invokedominationHandler.java:689 在com.intellij.util.xml.generictTributeValue$$EnhancerByGlib$$6007b85d.getValue上 位于com.intellij.spring.factories.resolvers.MethodInvokingFactoryBeanTypeResolver.getObjectTypeMethodInvokingFactoryBeanTypeResolver.java:27 位于com.intellij.spring.factories.SpringFactoryBeansManagerImpl.getProductTypeClassNamesSpringFactoryBeansManagerImpl.java:149 位于com.intellij.spring.factories.SpringFactoryBeansManagerImpl.getProductTypesSpringFactoryBeansManagerImpl.java:107

首先让我们把这件事弄清楚。错误不会出现,因为您正在检查usageAlt+F7 有两件事可能会出错:

Intellij堆大小不足。请增加堆的大小 转到Mac上的设置首选项->编译器->Java编译器->最大堆大小MB,增加大小,然后重新启动IntelliJ

您可能正在64位计算机上运行32位版本的Intellij


您是否尝试增加堆栈大小,例如,-Xss=4m您的意思是在idea64.exe.vmoptions中添加-Xss=4m?不,这不起作用,因为IDEA无法识别此选项并且无法启动。请告知解决方案是否有效。在我的例子中,我在64位机器上运行32位,这导致了一些内存问题。谢谢你的回复。对于1,IdEA 14没有>编译器->Java编译器->最大堆大小MB选项,我认为这对我的问题没有帮助,因为它是关于编译器的,而不是关于操作的。对于2,不,我运行的是64位idea64。exe@DineshArora该错误是堆栈溢出,而不是OutOfMemoryError堆。这里有一个无限循环,它是调用Find Usage的结果,这是由于intellij的Spring和XML库之间有一个循环代码路径。