在由sbt驱动的给定项目中,项目库中存在某种类型的损坏,特别是用于kafka-spark-9.7.2.jar的MavenLocal存储库,其中:
以下尝试"清理"已经完成了:
此外,我已经验证项目从
构建sbt package
在命令行上
UPDATE 重新运行sbt gen-idea后,解析器仍然找不到库。但是库存在 - 即使IJ知道它们,如下面的屏幕截图所示。为什么IJ可以找到库
C:\Users\S80035683\.ivy2\cache\org.apache.kafka\kafka\jars\kafka-0.7.2-spark.jar!\kafka\api\FetchRequest.class
但是,IJ无法解析Parser中该库的任何类?
答案 0 :(得分:2)
您必须为Intellij构建项目,尝试在项目根目录中执行此操作:
sbt idea with-sources=yes
这应该从头开始构建项目结构并添加正确的依赖项,通常我在添加依赖项或jar
后刷新项目。
编辑:
要使用此命令,您需要plugin,否则您可以使用gen-idea
,但我只使用了几次而且我不确定它是如何运作的。
EDIT2:
有一些混乱,首先,对于IDEA SBT控制台,您不需要预先添加sbt命令,因为您已经在sbt内部了:
如果您有想法的sbt插件,可以使用gen-idea with-source=yes
(不预先添加sbt)
在终端上,您可以转到项目根目录并输入sbt
进入sbt控制台并使用gen-idea
或idea with-sources=yes
(不预先添加sbt)
或直接sbt gen-idea
或者如果你有插件sbt idea with-sources=yes
(prepending sbt)
要达到sbt控制台内部的想法,你需要在首选项上安装sbt插件 - >插件并搜索sbt然后查看 - >工具Windows - > SBT控制台:
要启动控制台,请单击播放按钮,以杀死头骨上的控制台。
答案 1 :(得分:0)
我遇到了同样的问题。我通过直接编写有问题的库的CLASSES
和SOURCES
来修复它。这可以在.idea/libraries/SBT__<problematic library>_jar.xml