長い間ブログを書いていなかったし、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を削除します。
補足知識
MAC OS X 環境のすべての構成とロード順序は次のとおりです。
# 系统级别
/etc/profile
/etc/paths
# 用户级别
~/.bash_profile
~/.bash_login
~/.profile
~/.bashrc(或者~/.zshrc)
- 最初の 2 つの環境設定はシステムの起動時にロードされ、すべてのユーザーに有効になります。後の 4 つは特定のユーザーレベルの設定に属します