无法读取工件描述符:IntelliJ

Posted

技术标签:

【中文标题】无法读取工件描述符:IntelliJ【英文标题】:Failed to Read Artifact Descriptor: IntelliJ 【发布时间】:2016-05-08 10:28:30 【问题描述】:

我的 Maven POM 文件遇到问题,无法找到 spark 依赖项并返回错误: 无法读取 org.apache.spark:spark-streaming-kafka_2.10:jar:1.2.1 的工件描述符

我已经确认这不是任何公司防火墙的问题,因为其他所有依赖项都已正确加载,仅此一个。

我还能够在我的 Maven 设置中确认它正在尝试从以下存储库中提取。我尝试删除本地计算机上的 .m2 存储库以重新加载它,但仍然没有骰子。

http://repo.maven.apache.org/maven2/org/apache/spark/spark-streaming-kafka_2.10/1.2.1/

下面附上我的pom文件

<groupId>my.group.id</groupId>
<artifactId>sentiment</artifactId>
<version>1.0-SNAPSHOT</version>
<name>NPITWITTER</name>

<properties>
</properties>

    <dependencies>
        <dependency>
            <groupId>com.sparkjava</groupId>
            <artifactId>spark-core</artifactId>
            <version>1.1.1</version>
        </dependency>
        <dependency>
            <groupId>org.apache.spark</groupId>
            <artifactId>spark-streaming-kafka_2.10</artifactId>
            <version>1.2.1</version>
        </dependency>
        <dependency>
            <groupId>org.apache.spark</groupId>
            <artifactId>spark-core_2.10</artifactId>
            <version>1.2.1</version>
        </dependency>
        <dependency>
            <groupId>org.apache.spark</groupId>
            <artifactId>spark-streaming_2.10</artifactId>
            <version>1.2.1</version>
        </dependency>
        <dependency>
            <groupId>org.apache.spark</groupId>
            <artifactId>spark-hive_2.10</artifactId>
            <version>1.2.1</version>
        </dependency>
        <dependency>
            <groupId>org.apache.spark</groupId>
            <artifactId>spark-sql_2.10</artifactId>
            <version>1.2.1</version>
        </dependency>


    </dependencies>

【问题讨论】:

这个依赖正确存在:mvnrepository.com/artifact/org.apache.spark/… 所以问题出在其他地方。 【参考方案1】:

在 Intellij 中,我遇到了同样的问题,

我也做了代理设置,并运行了命令mvn –U clean install,但它不起作用。

我通过启用以下设置解决了问题(以黄色突出显示)

在 Intellij 中,转到 文件 -> 设置 -> 构建、执行、部署 -> Maven 选中“始终更新快照”框

【讨论】:

为我工作,因为它似乎不得不下载所有子项目的所有依赖项。 Mac 上的“IntelliJ IDEA -> 首选项” 对更新到 2018.2.2 后一个项目中出现的相同问题有帮助 非常感谢哥们,我正要离开 intelli J IDEA,你拯救了我的夜晚。 我还需要勾选use plugin registry 标签,然后它就可以工作了。【参考方案2】:

已解决,是因为启用了代理设置。使用mvn -U clean install 重新运行,一切都已修复。

【讨论】:

确实是代理相关设置。【参考方案3】:

以下为 IDEA 17 工作,

转到File 选择Settings 选择Build, Execution, Deployments 从下拉列表中选择Build Tools 从下拉列表中选择Maven 勾选Always update snapshots复选框

【讨论】:

你的回答为我节省了数小时,甚至数天【参考方案4】:

我猜 IntelliJ 附带并嵌入了 Maven 安装,所以只需确保您的 IDE 指向正确的 Maven 主目录:用户设置文件: 值,这些位于:

转到File 选择Settings 选择Build, Execution, Deployments 从下拉列表中选择Build Tools 从下拉列表中选择Maven

【讨论】:

【参考方案5】:

我刚刚解决了这个问题。请进入 Build, Execution, Deployments 的 Maven 选项卡并将其设置为提供的设置。

【讨论】:

【参考方案6】:

就我而言,这是与代理相关的问题。我强调了一些您可能需要验证和更正的地方。

    首选项窗口中的 Intellij 代理设置 您的 ~/.m2/settings.xml 或 /usr/local/Cellar/maven//libexec/conf/settings.xml 中的 maven settings.xml 条目 系统代理

希望这会有所帮助。

【讨论】:

【参考方案7】:

转到文件 => 设置 => 构建、执行、部署 => Maven => Maven 主目录:从 Bundled (Maven 3) 更改为 Bundled (Maven 2)

【讨论】:

以上是关于无法读取工件描述符:IntelliJ的主要内容,如果未能解决你的问题,请参考以下文章

Maven 中的工件描述符到底是啥?

找不到依赖项 'com.h2database:h2:1.4.200',无法读取 com.h2database:h2:jar 的工件描述符

想要工件可追溯性而不放弃 SNAPSHOT 限定符

libevent 无法读取打开的套接字描述符

Intellij 和 Eclipse 无法找到库工件

intellij Gradle 同步错误:“无法解析配置':classpath'的所有工件。”