[英]Maven dependency for Spark's StreamingQuery
我有一個編譯時錯誤:
無法解析符號“火花”
對於以下代碼:
import org.apache.spark.sql.streaming.StreamingQuery;
我使用 InteliJ。
pom.xml:
...
<dependencies>
<dependency>
<groupId>com.sparkjava</groupId>
<artifactId>spark-core</artifactId>
<version>2.5</version>
</dependency>
<dependency>
<groupId>org.apache.spark</groupId>
<artifactId>spark-sql_2.11</artifactId>
<version>2.4.0</version>
</dependency>
</dependencies>
編輯:
我注意到 Maven 抱怨 spark-sql 依賴:
我可以使用此處提供的源代碼確認接口 org.apache.spark.sql.streaming.StreamingQuery 存在於 spark-sql_2.11:2.4.0: https : //github.com/apache/spark/blob/v2 .4.0/sql/core/src/main/scala/org/apache/spark/sql/streaming/StreamingQuery.scala
我假設編譯錯誤與源代碼中的導入有關,而不是與某種類型有關(您沒有附上失敗的文件的源代碼,所以我只能在這里推測)
所以,就分辨率而言:
嘗試運行mvn clean compile
命令行沒有的IntelliJ。 如果成功 - 檢查 intelliJ 集成(也許重新導入可以解決問題)。
如果沒有 - 檢查pom.xml
可能您錯誤地更新了<dependencyManagement>
部分。
從本地 maven 存儲庫中刪除 spark jars 並重試,有時可能會下載 jar 損壞
Update 1既然現在我們知道從命令行運行mvn clean compile
成功了,這一定是在 intelliJ 中打開項目的問題。
所以我建議做以下事情:
pom.xml
。 IntelliJ 會詢問您是否要刪除之前找到的項目文件 - 回答“是”,它將重新構建內部依賴項數據結構。 然后嘗試運行程序並更新問題是否存在。 http://sparkjava.com/上的“Spark 框架”與Apache Spark無關。 刪除com.sparkjava
依賴項(假設您的項目中的其他地方不需要它)並將其替換為
<dependency>
<groupId>org.apache.spark</groupId>
<artifactId>spark-core_2.11</artifactId>
<version>2.4.0</version>
</dependency>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.