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

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

error: package net.sourceforge.barbecue does not exist

这怎么可能呢?

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


当前回答

如果你尝试了建议的方法,仍然没有机会,请确定你的订单:

删除你的。idea/ 无效和重新启动缓存之后 从maven工具导入maven项目

如果你没有在删除你的.idea/后无效并重新启动缓存,Intellij会继续生成它,这在我的情况下是错误的。

其他回答

我也遇到了同样的问题,通过将设置中的“Maven主目录”从“捆绑”更改为本地安装的Maven,我解决了这个问题。也许这触发了某种刷新的地方,因为我没有改变这个设置几个月没有任何问题。

无效缓存/重新启动,然后构建->重建项目帮助我

这里发生的情况是特定的包在缓存中不可用。重置将有助于解决问题。

File ->使缓存失效/重新启动 转到终端,重新构建项目 。/ gradlew构建

这将再次下载所有丢失的包

我的单元测试也遇到了同样的问题。我在我的主分支上创建了测试,在早期,无论我使用的是哪个分支,一切都运行良好。但是当我再次切换到主分支时,测试不再工作了。 帮助我的是:

关闭intellij ->从目录中删除。idea文件->再次通过pom.xml打开项目(idk如果它与你打开项目的方式有关,但第一次当我尝试通过intellij正常打开它时,它仍然不工作)->从右菜单重新加载所有maven项目->重建项目,就是这样,现在一切都工作了

在我的案例中,问题是IntelliJ和settings.xml文件中有不同的存储库目录配置。

检查两个存储库目录是否相同:

IntelliJ(文件>设置>构建,执行,部署>构建工具> Maven)

settings.xml (通常在c:\ users \myuser\。M2或/home/myuser/.m2)

<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0
                      http://maven.apache.org/xsd/settings-1.0.0.xsd">

  ...
  <localRepository>C:\Users\myuser\.m2\repository</localRepository>
  ...
</settings>

修复目录后运行:

为所有项目生成文件夹和更新源

重新导入所有maven项目