我正在尝试使用烧烤条形码打印库。我通过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中编码,还有其他地方需要添加库吗?
当前回答
I created two new classes under a new package and used it in rest of the code, Intellij was able to resolve these no red highlights were shown in the intellij editor. While building it was showing package doesn't exist error. I tried everything from gradle clean build, rebuild project, clear .idea and .gradle and reimporting the project, clearing the gradle local cache but nothing was working. Finally I refactored the name of the new package and this time intellij was able to recognize the new classes and it started working.
其他回答
这里发生的情况是特定的包在缓存中不可用。重置将有助于解决问题。
File ->使缓存失效/重新启动 转到终端,重新构建项目 。/ gradlew构建
这将再次下载所有丢失的包
这是一个经常发生的非常烦人的问题。尤其是在切换到不同的git分支之后。它浪费了我太多的时间来排除这种问题。以上方法我都试过了。但我找不到可靠的方法。在这里,我总结了那些可能对我的情况有所帮助的步骤。Jetbrains,请修复此问题以节省客户的宝贵时间。
确保执行成功的命令行构建(如果UT失败,请使用-Dmaven.test.skip=true忽略UT)。 在“Maven Projects”视图中,尝试使用“重新导入”所有的Maven项目。 在文件菜单中,使用“无效缓存” 删除。idea文件夹,基本上从头开始创建工作区。(这是唯一可靠的解决方法)
我尝试了所有的答案,但最终帮助我的是将Maven从捆绑到我自己的Maven发行版。
我认为反之亦然(从自己的改变到捆绑)也会有所帮助。
对我来说,唯一有效的方法是:
mvn idea:idea
好处是您不必删除.idea文件夹或.iml文件,从而丢失所有配置。一切都会被保存下来。
(可能有些类似gradle的想法也适用于gradle)。
现有的13个答案中没有一个对我有用。然而,我可以通过首先删除所有模块来解决这个问题:
打开文件>项目结构… 进入模块选项卡, 选择所有模块,按下移除按钮,
然后从Maven工具窗口中删除所有剩余的Maven模块:
选择所有模块, 右键点击它们, 按删除项目,
然后在项目工具窗口中再次添加它们:
右键单击根目录pom.xml, 按添加为Maven项目,
现在取消Maven工具窗口中任何被忽略的模块:
选择所有被忽略的(灰色)Maven模块, 右键点击它们, 按Unignore,
最后使用Build >重建项目进行重建。这里假设已经进行了mvn清洁安装。