Failed to execute goal net.alchim31.maven:scala-maven-plugin:3.2.2:compile

環境:

spark:2.4.4

maven:apache-maven-3.6.2 

java: 1.8

背景:

修改了spark源碼,想基於此用spark的make-distribution.sh腳本重新打可部署的tar包,命令如下:

./dev/make-distribution.sh --name maruilei-spark  --tgz  -Phadoop-2.7 -Phive -Phive-thriftserver -Pyarn -Pkubernetes -Psparkr -DskipTests

問題:

報錯:

[ERROR] Failed to execute goal net.alchim31.maven:scala-maven-plugin:3.2.2:compile (scala-compile-first) on project spark-kubernetes_2.11: Execution scala-compile-first of goal net.alchim31.maven:scala-maven-plugin:3.2.2:compile failed.: CompileFailed -> [Help 1]

辦法:

針對此問題,網上一般嘗試方法:

1. 添加依賴:

<dependency>
<groupId>net.alchim31.maven</groupId>
<artifactId>scala-maven-plugin</artifactId>
<version>3.2.2</version>
</dependency>

2. 修改pom-parent.xml

<scalaVersion>${scala.version}</scalaVersion>
<recompileMode>incremental</recompileMode>
<useZincServer>true</useZincServer>

3. 檢查並kill掉後臺zinc進程:

ps -ef |grep hadoop

kill $pid

4. 可能跟maven版本有關:(這個可能遇到)

修改$MAVEN_HOME爲spark-2.4.4自帶的maven地址
或
修改make-distribution.sh腳本中第39行: MVN="$SPARK_HOME/build/mvn"
爲 MVN="$MAVEN_HOME/bin/mvn"

結論:

很不巧,上面的辦法對我都沒生效。

最終解決及思路:

考慮到報錯信息及上述方法未生效,我開始懷疑是否爲本機環境或代碼改的有問題。

首先把代碼都回退至原生代碼後,用相同的make-distribution.sh命令執行打tar包操作,成功;

恢復代碼後,失敗;

...尷尬...

檢查及修改代碼,去掉了一些不必要的修改及規範了幾處代碼,成功;

尷尬......

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章