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

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

error: package net.sourceforge.barbecue does not exist

这怎么可能呢?

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


当前回答

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

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

Then

Build ->重建项目

这将重新导入maven项目。

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

其他回答

我在更改pom后得到了这个错误,我通过execute修复了它:

mvn idea:module

这对我很有用

在我的案例中,问题是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项目

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

根据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

现有的13个答案中没有一个对我有用。然而,我可以通过首先删除所有模块来解决这个问题:

打开文件>项目结构… 进入模块选项卡, 选择所有模块,按下移除按钮,

然后从Maven工具窗口中删除所有剩余的Maven模块:

选择所有模块, 右键点击它们, 按删除项目,

然后在项目工具窗口中再次添加它们:

右键单击根目录pom.xml, 按添加为Maven项目,

现在取消Maven工具窗口中任何被忽略的模块:

选择所有被忽略的(灰色)Maven模块, 右键点击它们, 按Unignore,

最后使用Build >重建项目进行重建。这里假设已经进行了mvn清洁安装。

如果您向项目结构中添加了一个库(而不是通过maven,这是不同的),请确保它是作为相关模块的依赖项包含的。

项目结构->模块->依赖项