mac maven报错 この環境ではコンパイラは提供されません。おそらく、JRE 上で実行しているのでしょう。

長い間ブログを書いていなかったし、csdn でブログを書くのも久しぶりのはず、若くて軽薄だったので、独立した Web サイト seifly_cn を立ち上げて自分の Web サイトに記事を書いたりもしていましたが、蓄積された記事は過失により破壊されました ユウはかつて、専用の Web サイトを持ったほうが良いことに気づきました、csdn、ブログ ガーデン、Weibo などの大きなプラットフォームには 10 年以上のメモがあります。技術系の人には昔から変わらない特徴があって、問題を解決するためにどれだけ疲れて眠いのかわからない、自分に腹が立つ、どんどんおかしくなっていき、どんどんおかしくなっていきます。私は少しずつ冷静になって、同じ問題に遭遇したクラスメートに少しでも助けになればと思って、自分が遭遇した問題を少しずつ書き留めてみんなで共有しました。

問題が発生しました: Mac システムが 12.6.1 にアップグレードされた後、jdk が 8 から jdk11 に何気なくアップグレードされましたが、サーバー上の jdk がまだ 8 であることが判明し、コンパイルされた jar パッケージは実行できませんでした (コンパイルされた JDK バージョンを変更するのは無意味です)。そのため、Switch を jdk8 に戻して再インストールし、/Library/Java/JavaVirtualMachines ディレクトリ内のバージョン 11 のフォルダを直接削除する必要がありました。これが正しいかどうかわかりませんが、IDEA でコンパイル済みのバージョンと JDK 構成を変更したところ、さまざまな問題が見つかりました。

idea で mvn パッケージを実行すると、次のエラーが報告されます 

 プロジェクト seifly-service でゴール org.apache.maven.plugins:maven-compiler-plugin:3.1:compile (default-compile) を実行できませんでした: コンパイル失敗

この環境ではコンパイラは提供されません。おそらく、JDK ではなく JRE 上で実行されているのでしょうか?


エラーは Mac ターミナルで次のように報告されます。

 メインクラス org.codehaus.plexus.classworlds.launcher.Launcher が見つからないかロードできませんでした

解決プロセス: idea コマンド ラインで mvn -v Discovery を実行します。

Maven ホーム: /Users/XXX/Documents/work/apache-maven-3.3.9
Java バージョン: 1.8.0_201、ベンダー: Oracle Corporation
Java ホーム: /Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home
デフォルトのロケール: zh_CN、プラットフォーム エンコーディング: UTF-8
OS 名: "mac os x"、バージョン: "10.16"、アーチ: "x86_64"、ファミリー: "mac"
javahome が間違っていることが判明しました。Maven のデフォルトの jdk は /Library/Internet を指しています。 Plug-Ins/JavaAppletPlugin.plugin/Contents/Home で、ターミナルにコマンド echo $JAVA_HOME を入力します。これが正しい JDK パスです。これはどこに設定されていますか? 見つかりません。3 つの設定ファイル ~/.base_profile ~/.zshrc /etc/profile /etc/zshrc を確認しました

最後に、Baidu「Java ホーム: /Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home」

解決:

/ライブラリ/インターネットプラグイン/JavaAppletPlugin.pluginを削除します。

参考:android - tools.jar が見つかりませんでした。/Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home に有効な JDK インストールが含まれていることを確認してください - STACKOOM

補足知識

MAC OS X 環境のすべての構成とロード順序は次のとおりです。

# 系统级别
/etc/profile
/etc/paths 

# 用户级别
~/.bash_profile 
~/.bash_login 
~/.profile 

~/.bashrc(或者~/.zshrc)
  • 最初の 2 つの環境設定はシステムの起動時にロードされ、すべてのユーザーに有効になります。後の 4 つは特定のユーザーレベルの設定に属します

おすすめ

転載: blog.csdn.net/s_ongfei/article/details/127816115