我正在尝试使用烧烤条形码打印库。我通过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 ->使缓存失效/重新启动 转到终端,重新构建项目 。/ gradlew构建
这将再次下载所有丢失的包
其他回答
如果你不想破坏。idea,你可以尝试:
开放项目结构>模块 将Java文件夹取消标记为源文件夹 应用/重建 然后再次将其标记为源文件夹 重建
package com.example;
import com.sun.jna.Library;
import com.sun.jna.Native;
public class C {
public interface Kernel32 extends Library {
public void OutputDebugStringA(String Text);
public void DebugBreak();
public void Sleep(int a);
}
public static int incint(int in1)
{
testpkg.xxxBird.Say("xxxee"); //only use this statement to call external lib
//I don't use "import" statement.
return in1*2;
}
}
我正在使用intellij的想法。 您需要在项目依赖项中添加testpkg路径。
右键单击项目/ Maven(在底部)/重新导入
编辑,很久以后:当我安装了Clover插件时,我也看到这种情况更频繁地发生。像扔掉坏习惯一样扔掉那个插件!
现有的13个答案中没有一个对我有用。然而,我可以通过首先删除所有模块来解决这个问题:
打开文件>项目结构… 进入模块选项卡, 选择所有模块,按下移除按钮,
然后从Maven工具窗口中删除所有剩余的Maven模块:
选择所有模块, 右键点击它们, 按删除项目,
然后在项目工具窗口中再次添加它们:
右键单击根目录pom.xml, 按添加为Maven项目,
现在取消Maven工具窗口中任何被忽略的模块:
选择所有被忽略的(灰色)Maven模块, 右键点击它们, 按Unignore,
最后使用Build >重建项目进行重建。这里假设已经进行了mvn清洁安装。
以上方法都试过了,都没用。 最后运行maven清洁安装就解决了!