在intelliJ中包不存在错误

时间:2013-11-22 04:28:37

标签: java intellij-idea ubuntu-12.04 barcode

我正在尝试使用烧烤条码打印库。我已经通过项目结构添加库成功地将库添加到IntelliJ。然后我导入了包并编写了方法,这没有给我任何错误。这些包可以在课堂上找到。

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

error: package net.sourceforge.barbecue does not exist

这怎么可能?

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

感谢。 提卡

30 个答案:

答案 0 :(得分:41)

我试图“Maven> Reimport”但实际修复它的唯一方法是关闭项目,删除.idea目录,然后重新打开项目。

答案 1 :(得分:33)

右键单击您的项目/ Maven(底部)/重新导入

编辑,很久以后:当我安装了Clover插件时,我也经常看到这种情况发生得更频繁。放下插件就像一个坏习惯!

答案 2 :(得分:33)

重新进口并没有奏效。以下为我工作。

  

档案 - >使高速缓存/重新启动无效

然后

  

构建 - >重建项目

那将重新进口maven项目。

答案 3 :(得分:11)

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

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

答案 4 :(得分:11)

在我看来,唯一起作用的是:

mvn idea:idea

好处是您不必删除.idea文件夹或.iml文件,也无需删除所有配置。一切都会被保留。

(也许gradle idea之类的东西也可以用于gradle)。

答案 5 :(得分:8)

menu -> build -> Rebuild Project

对我有用

(没有此步骤使缓存无效并没有帮助)

答案 6 :(得分:5)

尝试了以上所有方法,但没有奏效。 最后运行maven clean install解决了它!

答案 7 :(得分:4)

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

根据Intellij社区,Maven版本2020.1和2020.1.1中存在一个错误: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

答案 8 :(得分:4)

退出IntelliJ,删除每个.idea目录:

rm -Rf **/.idea/ 

然后重新启动。

答案 9 :(得分:4)

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

答案 10 :(得分:3)

这是一个非常烦人的问题,经常发生。特别是在切换到另一个git分支之后。解决这种问题浪费了我太多时间。我已经尝试了以上所有方法。但是我找不到可靠的方法。在这里,我只是总结了可能对我的情况有所帮助的那些步骤。 Jetbrains,请解决此问题以节省客户的宝贵时间。

  1. 确保命令行构建成功(如果UT失败,请使用-Dmaven.test.skip = true忽略UT。
  2. 在“ Maven项目”视图中,尝试对所有Maven项目使用“重新导入”。
  3. 在文件菜单中,使用“无效缓存”
  4. 删除.idea文件夹,基本上是从头开始创建工作区。 (这是解决此问题的唯一可靠方法)

答案 11 :(得分:3)

我确实重新导入了所有Maven项目。这对我有用。enter image description here

答案 12 :(得分:2)

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

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

转到文件>项目结构>项目设置>项目并在下拉列表中选择正确的。

答案 13 :(得分:2)

13个现有答案中没有一个对我有用。但是,我可以先删除所有模块来解决该问题:

  1. 打开File> Project Structure...
  2. 转到Modules标签,
  3. 选择所有模块,然后按删除按钮,

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

  1. 选择所有模块,
  2. 右键单击它们,
  3. Remove projects

,然后在Project工具窗口中再次添加它们:

  1. 右键单击根pom.xml
  2. Add as Maven project

现在从Maven工具窗口中忽略所有被忽略的模块:

  1. 选择所有忽略的(灰色)Maven模块,
  2. 右键单击它们,
  3. Unignore

,最后使用Build> Rebuild project进行重建。假设mvn clean install已经发生。

答案 14 :(得分:2)

作为仅偶尔需要执行Java工作的人,这很烦人。自从我上次在IntelliJ中运行服务器以来,不可避免地会添加软件包,并且软件包将无法构建。我发现了似乎更简单的解决方案:只是不要在IntelliJ中构建。通过Maven从命令行进行构建,然后确保运行配置未将“构建”列为“启动前”任务。

答案 15 :(得分:2)

我遇到了同样的问题,通过更改" Maven主目录"在" Bundled"的设置中到我当地安装的maven。也许这引发了某种形式的刷新,因为我几个月没有改变这个设置没有任何问题。

答案 16 :(得分:2)

在我的情况下,问题是IntelliJ和settings.xml文件中存在不同的存储库目录配置

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

IntelliJ File> Settings> Build,Execution,Deployment> Build Tools> Maven

IntelliJ Local Repository Configuration

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>

修复目录后,运行:

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

enter image description here

  1. 重新导入所有Maven项目

enter image description here

答案 17 :(得分:1)

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

  1. 文件->使缓存无效/重新启动
  2. 转到终端并再次构建项目

    import boto3
    
    instance_id = 'i-abcd1234'
    
    ec2_resource = boto3.resource('ec2', region_name='ap-southeast-2')  # Update accordingly
    instance = ec2_resource.Instance(instance_id)
    for tag in instance.tags:
        if tag['Key'] == 'Name':
            instanceName= tag['Value']
            print(instanceName)
    

这应该再次下载所有丢失的软件包

答案 18 :(得分:1)

Maven重新导入,重建和使缓存无效的方法无效。我通过打开终端并在根文件夹项目中执行maven clean install解决了该问题。 (IntelliJ已打开,我可以看到IDE在maven工作期间正在更新并触发重新索引)

答案 19 :(得分:1)

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

close intellij -> delete .idea file from directory -> 再次通过 pom.xml 打开项目(idk 如果你打开项目的方式很重要,但第一次当我尝试通过intellij正常打开它,它仍然不起作用)->从右侧菜单重新加载所有Maven项目-> rebuild项目就是这样,现在一切正常

答案 20 :(得分:1)

我尝试过

  1. “ Maven>重新导入”
  2. 删除.idea目录,然后重新打开项目。
  3. 文件->使缓存无效/重新启动,然后生成->重建项目
  4. 删除本地.m2文件夹中的内容,然后再次下载依赖项。
  5. 在Maven控制台中运行mvn idea:idea(尽管此命令已过时,但我不得不尝试。)

以不同的组合。

但是从Intellij 2020版本到2019年解决了我的问题。

答案 21 :(得分:0)

上述解决方案对我不起作用。我必须在 pom.xml 中显式添加依赖项。

只需将您的 jar 添加到资源/库下,然后将其作为依赖项添加到您的 pom.xml 中,例如:

        <dependency>
            <groupId>your-jar-group-id</groupId>
            <artifactId>artifact-id</artifactId>
            <version>1.0</version>
            <scope>system</scope>
            <systemPath>${basedir}/src/main/resources/library/name-of-jar.jar</systemPath>
        </dependency>

如果以上方法都不奏效,试试这个。

答案 22 :(得分:0)

我在 IntelliJ 2020.3 中遇到了这个问题,并尝试了无效缓存选项并重建,但问题仍然存在。唯一修复它的是重命名包并将其重命名回原来的名称。

答案 23 :(得分:0)

我尝试使用JDK 12编译Java 8项目,并且存在相同的问题。 先前的答案都无法解决我的问题。

我将 Shortel命令行更改为“ JAR清单”,并像一种魅力一样工作。

intellij

答案 24 :(得分:0)

如果您正在尝试建议的方法,但仍然没有机会,请确保您的订单

  1. 删除您的.idea /
  2. 此后失效并重新启动缓存
  3. 从您的maven工具导入maven项目

如果您没有在删除.idea /之后立即使缓存无效并重新启动,则Intellij会继续生成它,这对我来说是错误的。

答案 25 :(得分:0)

如果您遇到非常奇怪的“无法解决javasun软件包问题”,请尝试以下操作:

  1. 打开项目结构并将Project SDK更改为另一个版本,例如:java 8-> 9; 11-> 13,依此类推,等到它重新索引所有jdk的jar。 在具有相同版本的jdks之间切换可能无效! (例如:jetbrains jdk11-> openjdk 11)
  2. 打开一个新项目(或创建一个空项目); 暂停新项目的索引编制;关闭旧的开始索引;打开旧项目并暂停新项目的索引并等待。

答案 26 :(得分:0)

如果您不想破坏.idea,可以尝试:

  • 打开项目结构>模块
  • 将Java文件夹取消标记为源文件夹
  • 应用/重建
  • 然后将其再次标记为源文件夹
  • 重建

答案 27 :(得分:0)

以下是为我工作的解决方案: 禁用“使用--release选项进行交叉编译,如intellij idea中所示: 得到Settings-> Build,Execution,Deployment-> Compiler-> Java Compiler并禁用:

  

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

答案 28 :(得分:0)

我遇到了同样的问题。我通过应用android-apt插件https://bitbucket.org/hvisser/android-apt

来修复它

答案 29 :(得分:-1)

为我工作:

  1. 重新导入
  2. 使缓存无效/重新启动
  3. 重建项目