これを重複としてマークする前に、これらの投稿を調べましたが、何も助けにはなりませんでした。 'mvn'は内部コマンドまたは外部コマンドとして認識されません取得-bash:mvn:コマンドが見つかりません 、 コマンドラインからmvnコマンドにアクセスできません?
いくつかはウィンドウに固有であり、助けにはなりませんでした。 Mac OS X上のそれらのいくつかは、私が試したが助けにはならなかったという提案をしました。
私が試したもの(これはMaven
が示唆するものです):
配布アーカイブ、つまりApache-maven-3.1.1-bin.tar.gzをMaven 3.1.1をインストールするディレクトリに抽出します。これらの手順は、/ usr/local/Apache-mavenを選択したことを前提としています。サブディレクトリApache-maven-3.1.1がアーカイブから作成されます。コマンドターミナルで、M2_HOME環境変数を追加します。 export M2_HOME =/usr/local/Apache-maven/Apache-maven-3.1.1。 M2環境変数を追加します。 M2 = $ M2_HOME/binをエクスポートします。オプション:MAVEN_OPTS環境変数を追加して、JVMプロパティを指定します。 export MAVEN_OPTS = "-Xms256m -Xmx512m"。この環境変数は、Mavenに追加のオプションを提供するために使用できます。 M2環境変数をパスに追加します(例: PATH = $ M2:$ PATHをエクスポートします。 Java_HOMEがJDKの場所に設定されていることを確認してください。 Java_HOME =/usr/Java/jdk1.5.0_02をエクスポートし、$ Java_HOME/binがPATH環境変数にあること。 mvn --versionを実行して、正しくインストールされていることを確認します。
インストールに使用したterminal
で問題なく動作することがわかります。この問題はありません。しかし、新しいterminal
を試してみると、command not found
が返されます。
export PATH=$M2
を.bashrc
に追加し、source
を追加してからターミナルを再起動しましたが、それでも役に立ちませんでした。
誰かがターミナルのすべてのセッションでそれを利用可能にする方法を提案できますか?
ありがとう
これらが役立つ可能性がある場合は、次を試してください。
インストールはインストールした端末で動作するため、exports
を実行すると、current bash and its child process
で動作します。新しいterminals
には生成されません。
セッションが閉じられると、env
変数は失われます。 .bash_profile
を使用すると、bash
セッションが開始すると、その.bashrc and .bash_profile
が「実行」されるため、すべてのセッションで使用可能にできます。
次の手順に従って、それが役立つかどうかを確認します。
動作している端末でenv | grep M2_HOME
と入力します。これは次のようなものを与えるはずです
M2_HOME =/usr/local/Apache-maven/Apache-maven-3.1.1
env | grep Java_HOME
と入力すると、次のようになります。
Java_HOME =/Library/Java/JavaVirtualMachines/jdk1.7.0_40.jdk/Contents/Home
これで、M2_HOME
とJava_HOME
のPATHができました。
ls /usr/local/Apache-maven/Apache-maven-3.1.1/bin
を実行すると、そこにmvn
バイナリが表示されます。あとは、PATHを使用して毎回この場所を指定するだけです。 bash
はPATH
に記載されているすべてのディレクトリパスを検索するため、mvn
を見つけます。
.bash_profile
を開きます。作成していない場合は作成してください
vi〜/ .bash_profile
以下を追加します。
#set Java_HOME
Java_HOME=/Library/Java/JavaVirtualMachines/jdk1.7.0_40.jdk/Contents/Home
export Java_HOME
M2_HOME=/usr/local/Apache-maven/Apache-maven-3.1.1
export M2_HOME
PATH=$PATH:$Java_HOME/bin:$M2_HOME/bin
export PATH
ファイルを保存し、source ~/.bash_profile
と入力します。このステップは、.bash_profile
ファイル内のコマンドを実行します。これで準備完了です。
新しいターミナルを開いて、mvn
と入力してください。
ここに私のために働いたものがあります。
まず、M2_HOME変数がenv | grep M2_HOME
に設定されているかどうかを確認しました。 nothingがあります。
「/usr/local/Apache-maven-3.2.2」フォルダーにMavenがインストールされていることがわかっていたため、次の3つのステップを実行することで問題が解決しました。
M2_HOME=/usr/local/Apache-maven-3.2.2
M2=$M2_HOME/bin
export PATH=$M2:$PATH
上記のように、シーケンスを自動的に実行する場合は、.bash_profile
ファイルにそのシーケンスを保存できます。
これをmacOS Sierraバージョン10.12.6で行いました。上記のソリューションは適切ですが、〜/ .bash_profileが必要です。 /usr/local/bin
はすでに$ PATHにあり、echo $PATH
。 mavenをダウンロードする および次のコマンドを実行します-
$ cd ~/Downloads
$ tar xvf Apache-maven-3.5.3-bin.tar.gz
$ mv Apache-maven-3.5.3 /usr/local/
$ cd /usr/local/bin
$ Sudo ln -s ../Apache-maven-3.5.3/bin/mvn mvn
$ mvn -version
$ which mvn
注:Apache mavenのバージョンは、ダウンロードするバージョンです。
EDITED:これはmacOS Mojaveバージョン10.14.14でも機能します。
mavenをインストールする手順:
私はブレインストームの指示に従いましたが、まだ別の結果が得られていませんでした。新しいターミナルウィンドウはmvnコマンドを認識しませんでした。理由はわかりませんが、宣言を小さなチャンク.bash_profileに分割することでうまくいきました。私が知る限り、基本的に彼と同じことをしています。ここに私の.bash_profileで異なるものがあります:
Java_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_221.jdk/Contents/Home
export PATH Java_HOME
J2=$Java_HOME/bin
export PATH J2
M2_HOME=/usr/local/Apache-maven/Apache-maven-2.2.1
export PATH M2_HOME
M2=$M2_HOME/bin
export PATH M2