当前位置: 首页 > 知识库问答 >
问题:

NetBeans找不到我的Maven依赖项

轩辕鸿祯
2023-03-14

我创建了一个Maven项目,并添加了所需的依赖项。当我尝试构建项目时,会出现以下错误:

我的依赖关系确实表明,org。阿帕奇。poi图书馆在那里:

其中包括必要的包:

以下是我的简历:

import org.apache.poi.ss.usermodel.Workbook;
import org.apache.poi.ss.usermodel.WorkbookFactory;
import org.apache.poi.ss.usermodel.Sheet;
import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.ss.usermodel.Cell;

我对Java比较陌生,对Maven也很陌生,但是当我右键单击依赖添加依赖时,我输入了适当的GroupID和artifactID和版本(如Maven Central中列出的),它会自动下载文件。不确定我还缺少什么。感谢任何帮助。

编辑:我应该注意,我还尝试手动安装工件,并得到了相同的结果。

编辑:这里是我的pom的依赖项部分。xml文件。我很好奇为什么maven只增加了两个,而我有更多的LiB,但这似乎是另一个问题。这里列出了POI,这是编译器抱怨的问题。

<dependencies>
    <dependency>
        <groupId>org.apache.poi</groupId>
        <artifactId>poi-ooxml</artifactId>
        <version>3.16</version>
        <type>jar</type>
    </dependency>
    <dependency>
        <groupId>org.apache.poi</groupId>
        <artifactId>poi</artifactId>
        <version>3.16</version>
        <type>pom</type>
    </dependency>
</dependencies>

共有3个答案

端木昱
2023-03-14

有时候,当你在编辑pom而不是从maven下载时,Netbeans会感到困惑。只需对项目进行“清理和构建”,它就会下载依赖项。

乌翰学
2023-03-14

因此,尽管这个解决方案很奇怪,而且是针对特定地点的,但它仍然是解决方案。基本情况是这样的:我在一家公司工作,普通的开发人员都使用Windows作为开发环境。它们有特定的配置,允许它们穿透公司代理,以便能够访问外部maven存储库,这是其他所有人都没有的配置。因此,像Eclipse(这里的普通IDE)这样的工具无法通过代理下载。作为前Linux系统管理员,我能够在Linux虚拟机中使用NetBeans解决代理问题。然而,问题是我使用的所有maven配置都是基于windows的,这是我最终在设置中修复的。xml文件:

<localRepository>c:\.m2\repository</localRepository>

应该是

<localRepository>.m2/repository</localRepository>

在Linux中。一旦我注意到了这一点,并更改了设置(和目录名),它每次都能完美地工作。感谢所有回应的人。

芮叶秋
2023-03-14

到目前为止,您在我的环境中发布的配置没有错误。我有一种感觉,它与您的类路径和/或Netbean非类路径依赖有关,但是我不能确定,因为我没有对您的项目进行必要的可见性。图形用户界面是否添加了<代码>

因此,我将发布一个标准的方法来设置这个项目,供您比较,而不是试图通过问答来揭示您正在经历的问题。

  1. 转到文件

您将看到以下屏幕。

  1. 保持默认值不变,然后单击完成。您的项目现在应该具有以下结构

你看到你的进口下面有红线吗?

package com.mycompany.mavenproject1;
import org.apache.poi.*;
public class Main {
    public static void main(String[] args) {

    }
}

右键单击项目,清理并构建。它会产生错误吗?如果是这样,你能发布你的控制台吗?

 类似资料:
  • 我和我的朋友正在做一个Java maven项目,它的设置和我们从Git得到的项目是一样的。在我的设置中,Maven正确地导入了所有依赖项,但对于我的朋友,它找不到任何依赖项。 我们尝试过的事情: 右键单击project,单击maven并单击Reimport。 我们都可以上网,所以这也不是问题。而且,Maven在IntelliJ中设置为自动导入。

  • 我在Maven中有一个相当简单的带有子模块的项目结构: 在中,我定义了所有子模块的属性,如库版本或插件配置: 直接在节点中设置库版本。 在中设置节点。 尝试不同的库版本。 使用以及库是否存在。 在中运行。 在中运行。 在中运行 在中运行。 在中运行。

  • 我想在Java应用程序中包括Postgres JDBC驱动程序,所以我将其添加为maven依赖项。我从这个列表中选择了最后一个版本,令我惊讶的是,它恰好是由Atlassian主持的。现在我收到这个错误: 丢失的工件postgresql: postgresql: jar: 9.4.1208-jdbc42-atlassian托管 我还尝试了一个不由Atlassian托管的旧版本,但得到了相同的错误!有

  • 在使用scalatest时,我遇到了一个奇怪的问题。我有一个带有多个模块的maven项目。如果我直接在模块中执行mvn测试。它可以正常工作,但如果在根文件夹中执行,它会抱怨编译时缺少包(依赖项)。 我的配置如下所示: 插件配置: 如果我从maven scala插件中删除目标,它将编译,但scalatest将找不到测试源并退出,并且没有执行任何测试 : 你知道我做错了什么吗?! 干杯

  • 问题内容: 我有一个多模块项目:父POM.xml: rest-client-microservice的POM.xml如下所示: email-commons模块的POM.xml如下所示: 如果我尝试在父项目上执行,则会得到以下结果: 我已经在这个问题上困扰了好几天,但是我不知道为什么这不起作用。 问题答案: 我想到了。rest-client-microservice是一个Spring Boot项目,

  • Netbeans是使用ubuntu软件管理器安装的。 netbeans网站上关于在netbeans中设置maven项目的说明如下: 选择文件 但是maven类别不在我的安装中。 也在网站上: 在选项窗口中选择杂项类别,然后单击Maven选项卡 但根本没有maven标签。maven不在那里的原因是什么?我怎样才能让它工作? 谢谢