※Windows10での解消方法です。
初めての maven で行き詰る。
十数年ぶりにJavaを学びなおすことになり、まずはビルドツール「Apache Maven」から手を付けてみたところ、マニュアル通りでは全くうまく行かなかったので、メモとして残します。
※ちなみにWindowsコマンドプロンプトから実行してます。Eclipseで設定/実行した場合は、このような問題にはならず、サクッと動きます。
Mavenインストール後、「mvn archetype:generate」を実行
Mavenのバージョンはうまく表示され、Pathも通っている状態。
C:>mvn -version
C:
Apache Maven 3.6.2 (40f52333136460af0dc0d7232c0dc0bcf0d9e117; 2019-08-28T00:06:16+09:00)
Maven home: C:\java\apache-maven-3.6.2\bin..
Java version: 1.8.0_222, vendor: Azul Systems, Inc., runtime: C:\Program Files\Zulu\zulu-8\jre
Default locale: ja_JP, platform encoding: MS932
OS name: "windows 10", version: "10.0", arch: "amd64", family: "windows"
ところが「mvn archetype:generate」がエラーになってまいます。
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-archetype-plugin:3.0.1:generate (default-cli) on project standalone-pom: Execution default-cli of goal org.apache.maven.plugins:maven-archetype-plugin:3.0.1:generate failed: A required class was missing while executing org.apache.maven.plugins:maven-archetype-plugin:3.0.1:generate: org/dom4j/DocumentException
やってみた対処法
-
セントラルリポジトリにアクセスできることを確認
⇒ブラウザでアクセスできれば、ネットワーク上の問題はなし -
$M2_HOME\conf\settings.xmlのProxy設定を変えてみる。
⇒Proxyを使っていないのであれば、タグごとコメントアウト
⇒$M2_HOMEは、Mavenのインストールディレクトリ
3.WindowsコマンドラインのProxy設定解除
⇒Windowsファイアウォールで阻まれている可能性を疑う
**「Windowsの設定」⇒「ネットワークとインターネット」⇒「Windowsファイアウォール」⇒「ファイアウォールによるアプリケーションの許可」⇒「Windowsコマンドプロセッサを許可する(プライベート)」
これらの対処を行ったところ、うまく行くようになりました。(解決に2日も使ってしまった…)
ネットで検索しても、大半が**「Proxy設定をいぢりました。」や「1.のみ」**で終わってしまい、参考となる情報が意外となかったので、書いてみました。
不備等あればご連絡下しさいませ。
※雑多なメモ書きなので、今後の整理にこうご期待