在大文件中找不到声明,PhpStorm 2018.3.3
Declarations not found in large files, PhpStorm 2018.3.3
所以我有一个旧项目,其中包含一些非常大的文件(5000 多行)。我已经升级到最新的 PhpStorm,但它没有解决我的问题。
我的问题是方法调用没有链接到它们的声明,而是这样突出显示的。如果我尝试控制并单击方法名称,它会告诉我 "cannot find declaration to go to".
正确的 USE 行在文件的顶部,我知道它应该可以工作,因为如果我简单地删除文件底部的 1/4,它就会开始工作。我已经尝试缩小文件中导致它发生的代码范围,但它实际上只取决于删除了多少代码,而不是删除了哪些代码。
我已经通过我的选项文件增加了我的内存但没有用,我是 运行 64 位版本:
-Xms1024m
-Xmx2048m
-XX:ReservedCodeCacheSize=1024m
-XX:+UseConcMarkSweepGC
-XX:SoftRefLRUPolicyMSPerMB=50
-ea
-Dsun.io.useCanonCaches=false
-Djava.net.preferIPv4Stack=true
-XX:+HeapDumpOnOutOfMemoryError
-XX:-OmitStackTraceInFastThrow
-Dhidpi=true
-Dawt.useSystemAAFontSettings=lcd
-Dawt.java2d.opengl=true
我可以做些什么来增加这个软件可以处理的行数。禁用检查没有任何效果。使缓存失效并重新启动无效。删除我的 .idea
文件夹没有任何效果。
帮助 | Edit Custom Properties.
相关属性:
#---------------------------------------------------------------------
# Maximum file size (kilobytes) IDE should provide code assistance for.
# The larger file is the slower its editor works and higher overall system memory requirements are
# if code assistance is enabled. Remove this property or set to very large number if you need
# code assistance for any files available regardless their size.
#---------------------------------------------------------------------
idea.max.intellisense.filesize=2500
#---------------------------------------------------------------------
# Maximum file size (kilobytes) IDE is able to open.
#---------------------------------------------------------------------
idea.max.content.load.filesize=20000
重新启动 IDE,尝试文件 |使缓存无效 |无效并重新启动。
我 运行 在 PHPStorm 2020.2 版中遇到了完全相同的问题,最后联系了 JetBrain 的技术支持。不幸的是,唯一的解决方案是重构您的代码。这是 JetBrain 的回答:
“出现这种行为的原因是控制流太长,无法分析。
是这个:https://youtrack.jetbrains.com/issue/WI-41610
还有一部分,这个:https://youtrack.jetbrains.com/issue/WI-31569
不幸的是,您无能为力解决这个问题
基本上如果文件有太多的方法调用and/or代码行太多,IDE无法分析文件。所以你必须将脚本缩短到足以让 PHPStorm 分析它。请注意,这也会影响 PHPStorm 中的重构,因为它不会在受此错误影响的那些长文件中找到方法的用法。
所以我有一个旧项目,其中包含一些非常大的文件(5000 多行)。我已经升级到最新的 PhpStorm,但它没有解决我的问题。
我的问题是方法调用没有链接到它们的声明,而是这样突出显示的。如果我尝试控制并单击方法名称,它会告诉我 "cannot find declaration to go to".
正确的 USE 行在文件的顶部,我知道它应该可以工作,因为如果我简单地删除文件底部的 1/4,它就会开始工作。我已经尝试缩小文件中导致它发生的代码范围,但它实际上只取决于删除了多少代码,而不是删除了哪些代码。
我已经通过我的选项文件增加了我的内存但没有用,我是 运行 64 位版本:
-Xms1024m
-Xmx2048m
-XX:ReservedCodeCacheSize=1024m
-XX:+UseConcMarkSweepGC
-XX:SoftRefLRUPolicyMSPerMB=50
-ea
-Dsun.io.useCanonCaches=false
-Djava.net.preferIPv4Stack=true
-XX:+HeapDumpOnOutOfMemoryError
-XX:-OmitStackTraceInFastThrow
-Dhidpi=true
-Dawt.useSystemAAFontSettings=lcd
-Dawt.java2d.opengl=true
我可以做些什么来增加这个软件可以处理的行数。禁用检查没有任何效果。使缓存失效并重新启动无效。删除我的 .idea
文件夹没有任何效果。
帮助 | Edit Custom Properties.
相关属性:
#---------------------------------------------------------------------
# Maximum file size (kilobytes) IDE should provide code assistance for.
# The larger file is the slower its editor works and higher overall system memory requirements are
# if code assistance is enabled. Remove this property or set to very large number if you need
# code assistance for any files available regardless their size.
#---------------------------------------------------------------------
idea.max.intellisense.filesize=2500
#---------------------------------------------------------------------
# Maximum file size (kilobytes) IDE is able to open.
#---------------------------------------------------------------------
idea.max.content.load.filesize=20000
重新启动 IDE,尝试文件 |使缓存无效 |无效并重新启动。
我 运行 在 PHPStorm 2020.2 版中遇到了完全相同的问题,最后联系了 JetBrain 的技术支持。不幸的是,唯一的解决方案是重构您的代码。这是 JetBrain 的回答: “出现这种行为的原因是控制流太长,无法分析。
是这个:https://youtrack.jetbrains.com/issue/WI-41610
还有一部分,这个:https://youtrack.jetbrains.com/issue/WI-31569
不幸的是,您无能为力解决这个问题
基本上如果文件有太多的方法调用and/or代码行太多,IDE无法分析文件。所以你必须将脚本缩短到足以让 PHPStorm 分析它。请注意,这也会影响 PHPStorm 中的重构,因为它不会在受此错误影响的那些长文件中找到方法的用法。