Intellij Idea 无法让IntelliJ识别proto编译的Java类文件

jv2fixgn  于 2023-06-21  发布在  Java
关注(0)|答案(2)|浏览(668)

我们的项目中有一个build.xml,但IntelliJ无法从它导入。我得到一个:

Cannot import anything from <path_to>/build.xml file.

在Eclipse上,我可以执行以下操作:

File -> Import -> General -> Existing Projects into workspace.

并选择顶级文件夹。我在IJ也做了同样的事情。该项目导入和索引罚款,我可以做任何类的搜索。但是,它不识别protobuf编译的类文件。我安装了proto插件,所以它的语法突出显示了我的.proto文件,但仍然没有意识到它需要引用一个编译后的类输出。我需要做一些特殊的事情来让它识别这些文件吗?

6vl6ewon

6vl6ewon1#

因为这几乎是我唯一能找到关于我所面临的Idea问题的确切描述的地方,所以即使这是一个老问题,我也要回答。
事实证明,如果protocol buffers编译器生成的.java文件大于2.5MB(默认设置),Idea会完全忽略它。即使有一个.class文件,即使compile/make成功,即使你用Maven构建你的项目也很好。
要解决这个问题,只需编辑您的idea.properties文件(它位于Idea安装文件夹中的bin文件夹中),并注解掉此设置,或者将其设置为比生成的.java文件更大的文件(在我的情况下,我将其设置为15000,因为我生成的文件目前大小约为8 MB):

#---------------------------------------------------------------------
# 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

注意:至少在Linux上,默认更新策略似乎是“用刚下载的内容覆盖旧的Idea文件夹”,每次更新/升级后都必须应用此更改。

j2qf4p5b

j2qf4p5b2#

米歇尔的答案的延伸
您可以直接从IntelliJ中执行此操作。
在macOS中,当Intellij无法识别proto编译的Java类文件时,
从“帮助”菜单中--->选择“编辑自定义属性”。它可能会要求您创建idea.properties文件

$HOME//Library/Application\ Support/JetBrains/IdeaIC2020.1/

创建属性idea.max.intellisense.filesize=2500,并设置该值以适应IntelliJ识别的大型proto编译文件。

相关问题