无法读取工件描述符:IntelliJ

时间:2016-01-30 18:49:23

标签: java maven intellij-idea apache-spark apache-kafka

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

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

我也能够在我的maven设置中确认它正试图从以下回购中提取。我尝试在我的本地机器上删除.m2 repo以重新加载它,仍然没有骰子。

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>

7 个答案:

答案 0 :(得分:83)

在Intellij,我有同样的问题,

我也进行了代理设置,并运行了命令mvn –U clean install,但无效。

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

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

Intellij Settings window snapshot

答案 1 :(得分:9)

已解决此问题,原因是启用了代理设置。重新使用mvn -U clean install,所有内容都已修复。

答案 2 :(得分:6)

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

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

答案 3 :(得分:3)

以下为IDEA 17工作,

  • 转到ContentResolver resolver = getContentResolver(); long trackId = getTrackIdByPath(context, pathToFile); Uri uri = MediaStore.Audio.Playlists.Members.getContentUri("external", playListId); Cursor cursor = resolver.query(uri, new String[] {"count(*)"}, null, null, null); cursor.moveToFirst(); int last = cursor.getInt(0); cursor.close(); ContentValues value = new ContentValues(); value.put(MediaStore.Audio.Playlists.Members.PLAY_ORDER, ++last); value.put(MediaStore.Audio.Playlists.Members.AUDIO_ID, trackId); resolver.insert(uri, value);
  • 选择File
  • 选择Settings
  • 从下拉列表中选择Build, Execution, Deployments
  • 从下拉列表中选择Build Tools
  • 勾选Maven复选框

答案 4 :(得分:0)

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

答案 5 :(得分:0)

我只能解决问题。请进入Build, Execution, Deployments的Maven标签,并设置为提供的设置。

enter image description here

答案 6 :(得分:0)

就我而言,这是代理相关的问题。我重点介绍了一些您可能需要验证和更正的区域。

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

希望这会有所帮助。