Instalacja Maven w systemie Mac OS X


545

Próbuję zainstalować maven przez terminal, postępując zgodnie z tymi instrukcjami .

Do tej pory mam to

export M2_HOME=/user/apple/apache-maven-3.0.3
export M2=$M2_HOME/bin
export PATH=$M2:$PATH
export JAVA_HOME=/usr/java/jdk1.6.0_22

To prawdopodobnie głupie pytanie, gdzie idziesz, aby to znaleźć?


Co to jest , że staramy się znaleźć? Ze zmiennymi środowiskowymi w sposób, w jaki zostały wymienione, powinieneś być w stanie wywołać mvnplik wykonywalny z okna terminala.
Sri Sankaran

Jeśli, podobnie jak w moim przypadku, próbujesz przejść z Maven 3 z powrotem na Maven 2, zobacz ten doskonały blog: blog.frau-klein.org/2011/04/…
Jeff

2
Edgardo Myślę, że powinieneś odznaczyć zaznaczoną odpowiedź, jeśli możesz ...
jcollum 9.09.16

Odpowiedzi:


208

OS X przed Mavericks (10.9) faktycznie ma wbudowany Maven 3.

Jeśli korzystasz z systemu OS X Lion, domyślnie nie będziesz mieć zainstalowanej Java. Po prostu uruchom javago sam, a wyświetli się monit o jego zainstalowanie.

Zakładając, że kwalifikacje są spełnione, uruchom mvn -versioni zobacz trochę takich wyników:

Apache Maven 3.0.3 (r1075438; 2011-02-28 12:31:09-0500)
Maven home: /usr/share/maven
Java version: 1.6.0_29, vendor: Apple Inc.
Java home: /System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home
Default locale: en_US, platform encoding: MacRoman
OS name: "mac os x", version: "10.7.2", arch: "x86_64", family: "mac"

1
Jeśli z jakiegoś powodu potrzebujesz maven 2 na lwie, musisz go pobrać, ustawić M2_HOME, a następnie upewnij się, że gdziekolwiek zainstalowałeś, znajduje się przed / usr / bin na twojej ścieżce, lub zamień / usr / bin / mvn szuka linku symbolicznego do twojego. Wiem, że wiele osób wciąż pracuje nad rzeczami z maven 2, w tym ja.
Michael

3
Po prostu, Mountain Lion ma również wersję 3.0.3.
Michael

389
Aktualizacja, z OSX 10.9 Maverick, Maven nie jest już domyślnie instalowany.
Jerry Tian

14
@Michael Zainstalowałem Javę na Maverick, ale nie zainstalowałem dla niej Maven.
Swapnil

6
Yosemite nie obejmuje maven jako części instalacji, z Javą lub z narzędziami wiersza poleceń xcode.
Michael,

1897

Alternatywnie polecam instalację Homebrew dla tego rodzaju narzędzi.

Następnie wystarczy zainstalować Maven za pomocą:

brew install maven

PS: Jeśli masz błąd 404, spróbuj zrobić to brew updatewcześniej


164
W OS X 10.9 Mavericks, ponieważ nie ma zainstalowanego maven (przynajmniej w wersji beta), jest to właściwa odpowiedź.
Nacho L.,

9
To jedna odpowiedź, ale nie tylko „właściwa”. Pobieranie binarnego pliku zip Maven ze strony internetowej Maven jest szybsze i łatwiejsze IMO.
RCross

16
W OS X 10.9 powinieneś używać, brew install maven30ponieważ maven 3.1.1 wydaje się być wadliwy.
tadeuzagallo

18
brew install homebrew/versions/maven30zrobił dla mnie Dzięki @TadeuZagallo !!
fmquaglia,

16
Nie trzeba brew install maven30już jej używać, ponieważ najnowsza wersja 3.2.1 jest dość szybka i wydaje się, że nie zawiera błędów, które miała 3.1.1.
Michael Hogenson

239

Oświadczenie : Oto pełna odpowiedź, biorąc pod uwagę ostatnią wersję OS X (10.9 AKA Mavericks). Zdaję sobie sprawę, że wszystko, co skompilowałem w tej odpowiedzi, jest już obecne na stronie, ale posiadanie jej wyraźnie w jednej odpowiedzi sprawia, że ​​jest znacznie jaśniej.

Po pierwsze, w poprzednich wersjach OS X Maven jest instalowany domyślnie. Jeśli brakuje Javy, uruchomienie you@host:~ $ javaw terminalu wyświetli monit o instalację Java.

W Mac OS X 10.9 (Mavericks) Maven nie jest już domyślnie instalowany. Możliwe są wtedy różne opcje:

  • Korzystanie z Homebrew :
    • you@host:~$ brew install maven zainstaluje najnowszą wersję Maven (3.5.2 02.01.2018)
    • you@host:~$ brew install maven30 w razie potrzeby zainstaluje Maven 3.0
  • Za pomocą Macports : (nie testowałem tego)
    • you@host:~$ sudo port install maven zainstaluje najnowszą wersję Maven (?)
    • lub:
    • you@host:~$ sudo port install maven3 zainstaluje Maven 3.0
    • you@host:~$ sudo port select --set maven maven3 wybiera tę wersję Maven
  • Instalacja ręczna:
    • Pobierz Maven ze strony głównej
    • Postępuj zgodnie z instrukcjami instalacji:
      1. Wypakuj archiwum dystrybucyjne, tj. apache-maven-3.3.9-bin.tar.gzDo katalogu, w którym chcesz zainstalować Maven 3.3.9. Podkatalog apache-maven-3.3.9zostanie utworzony z archiwum.
      2. Opcjonalne : Dodaj zmienną środowiskową MAVEN_OPTS, aby określić właściwości JVM, np export MAVEN_OPTS="-Xms256m -Xmx512m". Ta zmienna środowiskowa może służyć do dostarczania dodatkowych opcji do Maven.
      3. Upewnij się, że JAVA_HOME jest ustawiony na lokalizację twojego JDK, np. export JAVA_HOME=$(/usr/libexec/java_home -v 1.8)I że $JAVA_HOME/binjest w twojej PATHzmiennej środowiskowej (chociaż może to nie być konieczne w najnowszych wersjach Mac OS X i Oracle JDK).
      4. Dodaj wyodrębnione apache-maven-3.3.9/bindo swojego$PATH
      5. Uruchom, mvn --versionaby sprawdzić, czy jest poprawnie zainstalowany.

6
sudo port install maven3instaluje Maven 3.0.5.
sędzia

3
Podczas instalacji ręcznej zamiast rozglądać się za próbą znalezienia JAVA_HOME, rozważ użycie export JAVA_HOME=$(/usr/libexec/java_home -v 1.8)(por. Ta odpowiedź ). Również (przynajmniej w Mavericks i Yosemite z Oracle JDK 1.8) nie powinieneś potrzebować $JAVA_HOME/binna swojej ścieżce, ponieważ wszystko jest połączone symbolicznie /usr/bin.
David Moles,

Masz rację co do lepszego sposobu definiowania JAVA_HOME! Nie wiedziałem o dowiązaniach symbolicznych, ale zredagowałem swoją odpowiedź, aby uwzględnić twoje uwagi. Dzięki
drzemka92

1
lepiej dodać exportinstrukcje, aby ~/.bash_profileudostępnić go we wszystkich sesjach, zobacz ten post, aby uzyskać szczegółowe informacje
Miranda

Lepsze niż co @ Miranda? Nie określiłem, gdzie mam wykonać te czynności exportw opcji „ręczna instalacja” , ponieważ uważam, że osoby wybierające instalację ręczną wiedzą najlepiej, gdzie chcą dokonać tych eksportów. Wydaje mi się, że jest to dość specyficzne dla każdej osoby i każdego systemu.
drzemka92

89

Kiedy ostatnio zaktualizowałem system do OS X Mavericks, a moje kompozycje maven zaczynają się nie udać. Musiałem więc ponownie zainstalować maven, ponieważ nie jest on wbudowany. Następnie spróbowałem z poleceniem:

brew install maven 

działa, ale instaluje wersję 3.1.1 maven, co powoduje problemy dla kilku użytkowników, takich jak ( https://cwiki.apache.org/confluence/display/MAVEN/AetherClassNotFound ). Więc jeśli napotykasz ten sam problem, prawdopodobnie będziesz chciał zainstalować wcześniejszą wersję Maven, 3.0.5. Aby to zrobić za pomocą Homebrew, musisz wykonać następujące polecenie:

brew install https://raw.github.com/Homebrew/homebrew-versions/master/maven30.rb

To wszystko, wtedy użyje innych formuł Homebrew, które zamiast tego dadzą ci maven 3.0.5.


Plik raw jest obecnie sporadycznie przetwarzany 503. Kiedy zadziałało, zapisałem go w lokalnym pliku.
NRitH

1
Musiałem ręcznie edytować plik parzenia, aby uniknąć błędu 404. „brew edit maven”. Zaszyfrowałem na stałe w jednym z serwerów lustrzanych dla „adresu URL”, a także musiałem zmienić sumę kontrolną „sha”. url ' apache.mesi.com.ar/maven/maven-3/3.0.4/binaries/… ' sha1 'aecc0d3d67732939c0056d4a0d8510483ee1167e'
Derek

Pamiętaj też, brew updateaby uzyskać najnowsze informacje przed zrobieniem tego brew install maven, jeśli chcesz, aby brew zainstalował maven 3.1.1+.
Gary S. Weaver,

2
brew install maven30
timomeinen

1
Właśnie użyłem brew install maveni zainstalowałem 3.0.5. Oto, co drukuje, kiedy to robię mvn -version:mvn -version Apache Maven 3.0.5 (r01de14724cdef164cd33c7c8c2fe155faf9602da; 2013-02-19 05:51:28-0800) Maven home: /usr/local/Cellar/maven/3.0.5/libexec Java version: 1.7.0_45, vendor: Oracle Corporation Java home: /Library/Java/JavaVirtualMachines/jdk1.7.0_45.jdk/Contents/Home/jre Default locale: en_US, platform encoding: UTF-8 OS name: "mac os x", version: "10.9.3", arch: "x86_64", family: "mac"
Azurespot

49

macOS Sierra i nowsze

brew install maven


3
Ten fragment kodu może rozwiązać pytanie, ale wyjaśnienie naprawdę pomaga poprawić jakość posta. Pamiętaj, że w przyszłości odpowiadasz na pytanie czytelników, a ci ludzie mogą nie znać przyczyn Twojej sugestii kodu. Staraj się również nie tłoczyć kodu objaśniającymi komentarzami, co zmniejsza czytelność zarówno kodu, jak i objaśnień!
kayess

1
Jeśli pojawia się komunikat „Nie znaleziono polecenia zaparzania”, musisz najpierw zainstalować napar. To jest link do strony internetowej brew.sh To jest polecenie instalacji/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
3akat

40

Jeśli używasz MacPorts w systemie OS X 10.9 Mavericks, możesz po prostu:

sudo port install maven3
sudo port select --set maven maven3

38

Aby zainstalować Maven na OS X, przejdź do strony Apache Maven i pobierz binarny plik zip.

Następnie możesz przenieść folder apache-maven-3.0.5 w folderze Pobrane do dowolnego miejsca, w którym chcesz zachować Maven; Jednak ponieważ reszta procesu obejmuje wiersz poleceń, zalecam zrobienie wszystkiego od tego miejsca.

W wierszu poleceń można uruchomić coś takiego:

mv ~/Downloads/apache-maven-3.0.5 ~/Development/

To tylko moje osobiste preferencje - mieć katalog „Programowanie” w moim katalogu domowym. Możesz wybrać coś innego, jeśli chcesz.

Następnie edytuj ~ / .profile w wybranym edytorze i dodaj:

export M2_HOME="/Users/johndoe/Development/apache-maven-3.0.5"
export PATH=${PATH}:${M2_HOME}/bin

Pierwsza linia jest ważna dla Maven (i musi być pełną ścieżką wyjaśniającą); druga linia jest ważna dla powłoki, aby uruchomić plik binarny „mvn”. Jeśli masz odmianę tej drugiej linii już w .profile, po prostu dodaj $ {M2_HOME} / bin na jej końcu.

Teraz otwórz drugie okno terminala i uruchom

mvn -version

co powinno dać wynik jak ...

Apache Maven 3.0.5 (r01de14724cdef164cd33c7c8c2fe155faf9602da; 2013-02-19 13:51:28+0000)
Maven home: /Users/johndoe/Development/apache-maven-3.0.5
Java version: 1.7.0_40, vendor: Oracle Corporation
Java home: /Library/Java/JavaVirtualMachines/jdk1.7.0_40.jdk/Contents/Home/jre
Default locale: en_US, platform encoding: UTF-8
OS name: "mac os x", version: "10.9", arch: "x86_64", family: "mac"

Kilka rzeczy do zapamiętania:

  1. Jeśli zainstalowałeś Oracle JDK 1.7, w powyższych wynikach możesz znaleźć raporty Maven JDK 1.6. Aby rozwiązać ten problem, dodaj do swojego ~ / .profile:

    eksportuj JAVA_HOME = $ (/ usr / libexec / java_home)

  2. Jak niektórzy zauważyli, Maven w przeszłości był dostarczany albo z samym OS X, albo z opcjonalnymi narzędziami wiersza poleceń dla XCode. Może to przestać mieć miejsce w przypadku przyszłych wersji OS X, a tak naprawdę OS X Mavericks nie obejmuje Maven. Osobista opinia: może to być spowodowane tym, że wciąż są w fazie beta, lub może Apple spojrzał na najnowszy Radar Technologiczny Thoughtworks i zauważył, że Maven został przeniesiony do „Hold”.


3
Od następnego dnia po wydaniu Mavericks nie jest już dostępny z Maven. instrukcje tutaj pomogły.
Bryce Fischer

Myślę, że dokładnie wykonałem te instrukcje, nawet ~ / Development. Ale apache-maven-3.0.5 nie ma podkatalogu „bin”.
garyp

Ups, pobrałem dystrybucję źródłową, a nie bin. Przepraszam za hałas.
garyp

Jaki jest odpowiednik .profile lub .bash_profile dla MAC OS Sierra (10.12.4)? Próbuję zainstalować maven i nie mam .profile ani .bash_profile na moim koncie domowym ...
Crenguta S

@CrengutaS To ~ / .profile, ale plik nie istnieje domyślnie; musisz to stworzyć. Aby uzyskać wyjaśnienie, dlaczego nie ma pliku .bash_profile, zobacz pierwszą odpowiedź na apple.stackexchange.com/questions/119711/…
RCross


25

Tylko krótki dodatek; jeśli chcesz zainstalować określoną wersję na MacOS przy użyciu Homebrew 1.5.2, możesz zainstalować ją w następujący sposób:

  1. aktualizacja naparu
  2. browar wyszukiwania maven

To da ci wersje maven dostępne w homebrew

  1. brew install maven@3.3

[Jeśli chcesz zainstalować maven 3.3.]


12

To polecenie brew install maven30nie działało dla mnie. Skarżył się na brakującą FORMUŁĘ. Ale następujące polecenie zadziałało. Mam zainstalowany maven-3.0.5.

brew install homebrew/versions/maven30

To jest dla Mac OS X 10.9 aka Mavericks.


1
To najlepsza odpowiedź dla tych, którzy mają problemy z bardzo wadliwym maven 3.1.1, który brew install maveninstaluje się teraz.
Nacho L.,

@ShajeelAfzal Musisz zainstalować Homebrew . Można to zrobić za pomocą następującego polecenia:/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
edufinn

brew install homebrew/versions/maven32działa dla mnie w Sierra
Tobi

Teraz polecam zainstalować najnowszą wersję Maven brew install maven.
edufinn

10

Jeśli nie chcesz instalować Homebrew tylko do instalacji Maven, możesz po prostu to zrobić:

  1. Pobierz binarny Maven i rozpakuj zip

  2. Uruchom terminal i wpisz następujące polecenie:

    sudo ln -s /path_to_maven_folder/bin/mvn /usr/bin/mvn

Więcej informacji na temat tego postu .


1
Otrzymuję ln: /usr/bin/mvn: Operation not permittedodpowiedź, myślę, że muszę wykonać następujące czynności: stackoverflow.com/a/32661637/1773155, aby rozwiązać problem.
Shajeel Afzal

w El-Capitan odkryłem, że należy przejść do katalogu / usr / local / bin / mvn. Wydaje się, że jest to czystszy sposób niż wyżej wspomniany link stackvoerflow
eric


7
  1. Otwórz terminal
  2. Wystarczy użyć polecenia brew, aby zainstalować maven
brew install maven
  1. Po zakończeniu pobierania i instalacji. Sprawdź wersję maven
mvn -version

Proszę bardzo !!! Teraz pomyślnie zainstalowałeś maven na swoim Mac OS.


1
Ta odpowiedź jest tylko fragmentem pełnego wcześniej udzielonego postu z Saurabh.
Hugo Allexis Cardona

6

dla tych, którzy właśnie migrowali do indywidualistów - użyłem rozwiązania * -ux;

  1. pobierz maven ze strony apache maven
  2. wstaw / opt
  3. zmodyfikowano plik .bash_profile i dodano:

    alias mvn='/opt/apache-maven-3.1.1/bin/mvn'
    export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.7.0_21.jdk/Contents/Home

2
Dzięki za to. Prawdopodobnie powinieneś po prostu dodać katalog bin maven do $ PATH.
Evan B.,

Dlaczego robisz to w „Szybki i brudny sposób”, kiedy strona internetowa Maven, której użyłeś do pobrania maven, zawiera instrukcje, jak to zrobić w „Właściwy sposób”? Zobacz moją odpowiedź.
snooze92,

Aby cofnąć ten nonsens, uruchomunalias mvn
egorikem

5

Dwie metody

  • (użyj homebrew) Auto instalacja:
    • Komenda:
      • brew install maven
    • Plusy i minusy
      • Plusy: łatwe
      • Minusy: (prawdopodobnie) nie najnowsza wersja
  • RęcznieZainstaluj (dla najnowszej wersji):
    • Plusy i minusy
      • Plusy: użyj oczekiwanej dowolnej (lub najnowszej ) wersji
      • Minusy: musisz to zrobić
    • Kroki
      • pobierz najnowszą wersję binarną ( apache-maven-3.6.3-bin.zip ) z oficjalnej wersji Maven
      • rozpakuj go ( apache-maven-3.6.3-bin.zip) i dodaj maven pathdo zmiennej środowiskowejPATH
        • zwykle edytuje i dodaje:
          • export PATH=/path_to_your_maven/apache-maven-3.6.3/bin:$PATH
        • do skryptu uruchamiania ( ~/.bashrclub ~/.zshrcitp.)

Dodatkowa uwaga

jak od razu zacząć działać i sprawdzić, czy jest poprawnie zainstalowany?

ZA:

source ~/.bashrc
echo $PATH
which mvn
mvn --version

tutaj wyjście:

  bin pwd
/Users/crifan/dev/dev_tool/java/maven/apache-maven-3.6.3/bin
  bin ll
total 64
-rw-r--r--@ 1 crifan  staff   228B 11  7 12:32 m2.conf
-rwxr-xr-x@ 1 crifan  staff   5.6K 11  7 12:32 mvn
-rw-r--r--@ 1 crifan  staff   6.2K 11  7 12:32 mvn.cmd
-rwxr-xr-x@ 1 crifan  staff   1.5K 11  7 12:32 mvnDebug
-rw-r--r--@ 1 crifan  staff   1.6K 11  7 12:32 mvnDebug.cmd
-rwxr-xr-x@ 1 crifan  staff   1.5K 11  7 12:32 mvnyjp
  bin vi ~/.bashrc
  bin source ~/.bashrc
  ~ echo $PATH
/Users/crifan/dev/dev_tool/java/maven/apache-maven-3.6.3/bin:xxx
  bin which mvn
/Users/crifan/dev/dev_tool/java/maven/apache-maven-3.6.3/bin/mvn
  bin mvn --version
Apache Maven 3.6.3 (cecedd343002696d0abb50b32b541b8a6ba2883f)
Maven home: /Users/crifan/dev/dev_tool/java/maven/apache-maven-3.6.3
Java version: 1.8.0_112, vendor: Oracle Corporation, runtime: /Library/Java/JavaVirtualMachines/jdk1.8.0_112.jdk/Contents/Home/jre
Default locale: zh_CN, platform encoding: UTF-8
OS name: "mac os x", version: "10.14.6", arch: "x86_64", family: "mac"

w celu uzyskania szczegółowych informacji proszę odnieść się do mojego (chińskiego) postu: 【已 解决】 Mac 中 安装 Gradle


4

Otwórz okno TERMINAL i sprawdź, czy masz już zainstalowane.

Rodzaj:

$ mvn –version

I powinieneś zobaczyć:

Apache Maven 3.0.2 (r1056850; 2011-01-09 01:58:10+0100)
Java version: 1.6.0_24, vendor: Apple Inc.
Java home: /System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home
Default locale: en_US, platform encoding: MacRoman
OS name: “mac os x”, version: “10.6.7″, arch: “x86_64″, family: “mac”

Jeśli jeszcze nie masz zainstalowanego Maven, oto jak pobrać i zainstalować maven oraz skonfigurować zmienne środowiskowe w Mac OS X:

http://bitbybitblog.com/install-maven-mac/


2

Na Maverick, uruchom w terminalu, xcode-select --install aby zainstalować Narzędzia wiersza poleceń.


Jeśli spróbujesz zainstalować Homebrew, nastąpi to automatycznie, jeśli nie masz jeszcze zainstalowanych narzędzi.
JavaCoderEx


2

Możesz użyć Maven Version Manager, za pomocą którego możesz używać wielu wersji Maven na bazę katalogów.

Instalacja

Korzystanie z Homebrew brew install mvnvm

Bez Homebrew mkdir -p ~/bin && curl -s https://bitbucket.org/mjensen/mvnvm/raw/master/mvn > ~/bin/mvn && chmod 0755 ~/bin/mvni dodaj ~/bindo ścieżki.

Stosowanie

Wersja domyślna

Aby ustawić domyślną wersję maven, ustaw zmienną środowiskową DEFAULT_MVN_VERSION na wersję maven, która ma być używana domyślnie.

Wersja Maven dla folderu

Utwórz plik o nazwie mvnvm.propertiesw folderze i skonfiguruj wersję maven w następujący sposób

mvn_version=<maven version>


1
% sudo port selfupdate; 
% sudo port upgrade outdated;
% sudo port install maven3;
% sudo port select --set maven maven3;

— add following to .zshenv -- start using zsh if you dont —
set -a
[[ -d /opt/local/share/java/maven3 ]] &&
    M3_HOME=/opt/local/share/java/maven3 &&
    M2_HOME=/opt/local/share/java/maven3 &&
    MAVEN_OPTS="-Xmx1024m" &&
    M2=${M2_HOME}/bin
set +a

1

Możesz zainstalować maven za pomocą homebrew. Poleceniem jest $ brew install maven


Jest to całkowicie zbędne, istnieje 8 innych odpowiedzi mówiących dokładnie to samo!
Mark Han

1

Po zainstalowaniu maven za pomocą naparu lub ręcznie za pomocą macOS Catalina i przy użyciu terminala lub iTerm do obsługi maven, musisz przyznać dostęp do aplikacji, aby uzyskać dostęp do plików użytkownika.

Preferencje systemowe -> Prywatność (przycisk) -> Pełny dostęp do dysku

A następnie dodaj terminal lub iTerm do tej listy.

Będziesz także musiał ponownie uruchomić aplikację, np. Terminal lub iTerm, po udzieleniu im pełnego dostępu do dysku.


0

Dla tych, którzy chcą używać maven2 w Mavericks, wpisz:

brew tap homebrew/versions

brew install maven2

Jeśli masz już zainstalowany maven3, najpierw wykonaj kopię zapasową 3 łączy (mvn, m2.conf, mvnDebug) /usr/local/bin:

mkdir bak

mv m* bak/

następnie zainstaluj ponownie:

brew uninstall maven2(tylko w przypadku konfliktu)

brew install maven2

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.