我正在尝试使用烧烤条形码打印库。我通过project structure add library成功将库添加到IntelliJ。然后我导入了包并编写了方法,这没有给我任何错误。这些包在类中可用。

但是当我编译时,它会给我一个错误:

error: package net.sourceforge.barbecue does not exist

这怎么可能呢?

我在ubuntu中编码,还有其他地方需要添加库吗?


当前回答

我重新导入了所有的专家项目。这对我很管用。

其他回答

以上方法都试过了,都没用。 最后运行maven清洁安装就解决了!

只是重新导入不起作用。下面的方法对我很有效。

File ->使缓存失效/重新启动

Then

Build ->重建项目

这将重新导入maven项目。

注意:您需要使缓存无效并重新构建项目。

我尝试了所有值得欣赏的答案,但没有一个能解决我的问题!

根据Intellij社区的消息,Maven在2020.1和2020.1.1版本中有一个bug: https://youtrack.jetbrains.com/issue/IDEA-237320?_ga=2.235486722.203129946.1591253608-322129264.1584010541

请尝试在2019.3.4版本上运行(从第一次开始就对我有效)

你可以从这里下载

https://www.jetbrains.com/idea/download/previous.html?_ga=2.190043688.203129946.1591253608-322129264.1584010541

类似于cvdr。过高的Java版本可能是问题所在。

在我们的测试项目中,一个大学生在使用多个java源代码时遇到了这个问题。她刚刚更新到一个更高的Intellij,当我们调查的时候,没有一个重建选项有效,但Intellij似乎已经“碰撞”了项目Java设置到Java 11(我猜它在升级安装时需要最高的安装版本?)将其设置回Java8,项目编译成功。

点击文件>项目结构>项目设置>项目,在下拉菜单中选择正确的。

这里有一个对我有效的解决方案: 禁用交叉编译的“Use -release”选项,如下所示: 得到设置->构建,执行,部署->编译器-> Java编译器和禁用:

使用'——release'选项进行交叉编译(java 9及更高版本)