我正在尝试使用烧烤条形码打印库。我通过project structure add library成功将库添加到IntelliJ。然后我导入了包并编写了方法,这没有给我任何错误。这些包在类中可用。
但是当我编译时,它会给我一个错误:
error: package net.sourceforge.barbecue does not exist
这怎么可能呢?
我在ubuntu中编码,还有其他地方需要添加库吗?
我正在尝试使用烧烤条形码打印库。我通过project structure add library成功将库添加到IntelliJ。然后我导入了包并编写了方法,这没有给我任何错误。这些包在类中可用。
但是当我编译时,它会给我一个错误:
error: package net.sourceforge.barbecue does not exist
这怎么可能呢?
我在ubuntu中编码,还有其他地方需要添加库吗?
当前回答
只是重新导入不起作用。下面的方法对我很有效。
File ->使缓存失效/重新启动
Then
Build ->重建项目
这将重新导入maven项目。
注意:您需要使缓存无效并重新构建项目。
其他回答
我尝试用JDK 12编译一个java 8项目,也有同样的问题。 以前的答案没有一个能解决我的问题。
我把Shortel命令行改为“JAR Manifest”,工作起来很有魅力。
如果你遇到了非常奇怪的“无法解决java、sun包的问题”,试试下面的方法:
打开项目结构,将项目SDK更改为另一个版本,例如:java 8 -> 9;11->13,等等,直到它重新索引所有jdk的jar。在相同版本的jdk之间切换可能无法工作!(示例:jetbrains jdk11 -> openjdk 11) 打开一个新项目(或创建一个空项目);暂停新项目的索引;关闭旧的;开始索引;打开旧项目,暂停新项目的索引并等待。
我尝试“Maven >重新导入”,但唯一真正修复它的是关闭项目,删除.idea目录,并重新打开项目。
退出IntelliJ,删除所有。idea目录:
rm -Rf **/.idea/
并重新启动。
对我来说,唯一有效的方法是:
mvn idea:idea
好处是您不必删除.idea文件夹或.iml文件,从而丢失所有配置。一切都会被保存下来。
(可能有些类似gradle的想法也适用于gradle)。