【Apache NIFI 操作】Win10+ IDEA NiFi源碼編譯錯誤解決和本地運作
系統:Win10 x64
IDEA版本:IntelliJ IDEA 2019.2.3 (Ultimate Edition)
Maven版本:3.6.3
JDK版本:1.8
錯誤解決
報錯1:

解決:大多是因為本地設定的JDK和項目使用的JDK版本不一緻導緻的,必須保持jdk版本一緻,參考Win10+ IDEA NiFi源碼編譯配置一文。
報錯2:
Could not transfer artifact xxx from/to xxx
[ERROR] Failed to execute goal on project nifi-jetty: Could not resolve dependencies for project org.apache.nifi:nifi-jetty:jar:1.8.0: Failed to collect dependencies at com.github.stefanbirkner:system-rules:jar:1.18.0 -> junit:junit-dep:jar:4.9.1-SNAPSHOT: Failed to read artifact descriptor for junit:junit-dep:jar:4.9.1-SNAPSHOT: Could not transfer artifact junit:junit-dep:pom:4.9.1-SNAPSHOT from/to jdk18 (http://www.myhost.com/maven/jdk18): Transfer failed for http://www.myhost.com/maven/jdk18/junit/junit-dep/4.9.1-SNAPSHOT/junit-dep-4.9.1-SNAPSHOT.pom 500 Internal Server Error -> [Help 1]
org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal on project nifi-jetty: Could not resolve dependencies for project org.apache.nifi:nifi-jetty:jar:1.8.0: Failed to collect dependencies at com.github.stefanbirkner:system-rules:jar:1.18.0 -> junit:junit-dep:jar:4.9.1-SNAPSHOT
at org.apache.maven.lifecycle.internal.LifecycleDependencyResolver.getDependencies (LifecycleDependencyResolver.java:269)
at org.apache.maven.lifecycle.internal.LifecycleDependencyResolver.resolveProjectDependencies (LifecycleDependencyResolver.java:147)
方法一:
這個問題主要就是在你下載下傳相關的依賴包時,沒有下載下傳成功照成的,需要找到對應的maven庫包,删除以 .lastUpdated 結尾的檔案,然後重新下載下傳,一般可以得到解決。
方法二:
按照方法一删除maven本地倉庫中的以 lastUpdated 結尾的檔案,然後将maven的配置檔案中的倉庫鏡像改為阿裡雲或者其他國内進行位址,重新import一下。
比如下面的鏡像,在setting.xml中的mirrors中添加阿裡雲鏡像:
<mirror>
<id>alimaven</id>
<mirrorOf>central</mirrorOf>
<name>aliyun maven</name>
<url>http://maven.aliyun.com/nexus/content/repositories/central/</url>
</mirror>
編譯成功并本地運作
編譯大約需要1.5小時:
編譯結束,在該目錄下輕按兩下run-nifi.bat:
會彈出CMD,正在啟動NiFi:
在浏覽器輸入
http://localhost:8080/nifi/
若出現以下界面,則說明編譯成功,并本地啟動了NiFi: