Maven не знайдено в Mac OSX


78

Після оновлення мого Mac OSX 10.8 до 10.9, Maven не знайдено в шляху / usr / share, але його встановлено в 10.8.

коли я пробую цю команду:

$ maven -version

отримав такий результат

-bash: mvn: команду не знайдено

але він працював нормально на 10.8? Будь-яка ідея?

Відповіді:


68

Maven більше не встановлюється за замовчуванням у Mac OS X 10.9. Вам потрібно встановити його самостійно, наприклад, використовуючи Homebrew .

Команда встановити Maven за допомогою Homebrew є brew install maven


3
Так .. Я шукав його в Google і знайшов чудовий підручник freddy.cellcore.org/post/64860247445/… .. У будь-якому разі, дякую за вашу допомогу .. насолоджуйтесь кодуванням :)
Sahil Mahajan

1
Чудова відповідь, дякую, мені бракувало лише двох речей (знайшов їх в Інтернеті) команда, яку потрібно запустити з brew, це: brew install maven для установки brew run: ruby ​​-e "$ (curl -fsSL raw.githubusercontent.com / Homebrew / install / master / install ) "
Асаф Манассен,

73

якщо ви не хочете встановлювати homebrew (або будь-який інший менеджер пакетів) лише для встановлення maven, ви можете взяти двійковий файл з їх веб-сайту:

http://maven.apache.org/download.cgi

витягніть вміст у папку (наприклад /Applications/apache-maven-3.1.1) за допомогою

$ tar -xvf apache-maven-3.1.1-bin.tar.gz

і, нарешті, налаштуйте свій текст за ~/.bash_profileдопомогою будь-якого редактора тексту, який ви хочете включити

export M2_HOME=/Applications/apache-maven-3.1.1
export PATH=$PATH:$M2_HOME/bin

перезапустіть термінал і протестуйте його за допомогою

$ mvn -version

Apache Maven 3.1.1 (0728685237757ffbf44136acec0402957f723d9a; 2013-09-17 17:22:22+0200)
Maven home: /Applications/apache-maven-3.1.1
Java version: 1.6.0_65, vendor: Apple Inc.
Java home: /System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home
Default locale: de_DE, platform encoding: MacRoman
OS name: "mac os x", version: "10.9", arch: "x86_64", family: "mac"

ви можете спробувати вивести PATH echo $PATH- чи включена папка maven?
pkyeck

2
Мені довелося скористатися, sudoперш ніж я зміг чисто запустити maven із папки / Applications / .. Я виявив, що комбінація nofluffjuststuff.com/blog/demian_neidetcher/2013/01/… і journaldev.com/2348/… допомогла мені відклеїтися.
JulianHarty

Мені довелося додати цілий каталог M2_HOME, наприклад, експортувати M2_HOME = / Users / km / Applications / apache-maven-3.3.9. Також переконайтеся, що ви вийшли і перезапустили термінал.
user358591 02

59
brew install maven

Переконайтесь, що ви встановили найновіші інструменти Xcode та командного рядка.

xcode-select --install

Спробував це. Тепер є "Виняток у потоці" main "java.lang.NoClassDefFoundError: org / codehaus / plexus / classworlds / launcher / Launcher" :(
Грем Леа

1
Знайдене десь ще в Інтернеті припускає, що проблема полягає в тому, що було встановлено M2_HOME. Я не можу протягом усього життя знайти, де це встановлюється, але введення unset M2_HOMEв .bashrc змусило це працювати.
Graham Lea

1
Класно, 'xcode-select --install' допоміг мені вирішити той факт, що нічого, що я встановив за допомогою домашньої мови (mongo, redis тощо), не було в моїй PATH після оновлення до Mavericks
Василь Даскалопулос

Це майже єдине рішення для майбутнього, воно завжди надає найновішу версію.
Steven McConnon

18
  1. Завантажте Maven звідси .
  2. Витягніть щойно завантажений tar.gz у потрібне місце (наприклад: / Users / admin / Maven).
  3. Відкрийте термінал.
  4. Наберіть " cd ", щоб перейти до домашньої папки.
  5. Введіть " touch .bash_profile".
  6. Введіть " open -e .bash_profile", щоб відкрити .bash_profile у TextEdit.
  7. Введіть наступне в TextEditor

alias mvn='/[Your file location]/apache-maven-x.x.x/bin/mvn'
export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdkx.x.x_xx.jdk/Contents/Home/

(Переконайтесь, що в ній немає мовних знаків або апострофу) 8. Переконайтеся, що ви заповнили необхідні дані (наприклад, ваше розташування файлу та номер версії).

  1. Збережіть зміни
  2. Введіть " . .bash_profile", щоб перезавантажити .bash_profile та оновити будь-які додані вами функції. (* обов’язково розділіть крапки одним пробілом).
  3. Тип mvn -version

У разі успіху ви повинні побачити наступне:

Apache Maven 3.1.1
Maven home: /Users/admin/Maven/apache-maven-3.1.1
Java version: 1.7.0_51, vendor: Oracle Corporation
Java home: /Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/Contents/Home/jre
Default locale: en_US, platform encoding: UTF-8
OS name: "mac os x", version: "10.9.1", arch: "x86_64", family: "mac"


Виникли проблеми з використанням заварки після оновлення до osx maverics. Цей метод у мене спрацював. Дякую.
thisisananth

Напевно, це не повне рішення
Джарвіс,

11

Це рішення може здатися дуже довгим, але це не так . Я просто включив багато прикладів, щоб все було зрозуміло. У мене це працювало в ОС Mavericks.

Примітка: Я об’єднав та відредагував деякі відповіді, показані вище, додав кілька прикладів та формату та опублікував результат, тож заслуга в основному у творців оригінальних публікацій.

  1. Завантажте Maven звідси .

  2. Відкрийте термінал.

  3. Витягніть файл, який ви щойно завантажили, у потрібне вам місце, або вручну, або набравши в терміналі такі рядки (заповніть необхідні дані):

    mv [Your file name] [Destination location]/ tar -xvf [Your file name]

    Наприклад, якщо наш файл має ім'я " apache-maven-3.2.1-bin.tar" ( версія Maven 3.2.1 ), і ми хочемо знайти його в " /Applications" каталозі, тоді нам слід набрати в Терміналі такі рядки:

    mv apache-maven-3.2.1-bin.tar /Applications/
    tar -xvf apache-maven-3.2.1-bin.tar
    
  4. Якщо на вашому комп’ютері не встановлено жодного JDK (Java Development Kit), встановіть його.

  5. Введіть " java -version" у терміналі. Ви повинні побачити щось подібне:

    java version "1.8.0"
    Java(TM) SE Runtime Environment (build 1.8.0-b132)
    Java HotSpot(TM) 64-Bit Server VM (build 25.0-b70, mixed mode)
    

    Запам’ятайте свою версію Java (у прикладі 1.8.0 ).

  6. Наберіть " cd ~/", щоб перейти до домашньої папки.

  7. Введіть " touch .bash_profile".

  8. Введіть " open -e .bash_profile", щоб відкрити .bash_profile у TextEdit.

  9. Введіть у TextEdit наступне (скопіюйте все і замініть потрібні дані):

    export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk[Your Java version].jdk/Contents/Home export M2_HOME=[Your file location]/apache-maven-[Your Maven version]/ export PATH=$PATH:$M2_HOME/bin alias mvn='$M2_HOME/bin/mvn'

    Наприклад, у нашому випадку ми замінимо " [Your Java version]" на " 1.8.0" (значення отримано на кроці 5), " [Your file location]" на " /Applications" (значення, що використовується як " Місце призначення " на кроці 3) і " [Your Maven version]" на " 3.2.1" (версія Maven спостерігається в крок 3), в результаті чого вийде такий код:

    export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0.jdk/Contents/Home
    export M2_HOME=/Applications/apache-maven-3.2.1/
    export PATH=$PATH:$M2_HOME/bin
    alias mvn='$M2_HOME/bin/mvn'
    
  10. Збережіть зміни

  11. Введіть " source .bash_profile", щоб перезавантажити .bash_profile та оновити будь-які додані вами функції.

  12. Тип mvn -version. У разі успіху ви повинні побачити наступне:

    Apache Maven [Your Maven version] ([Some weird stuff. Don't worry about this]) Maven home: [Your file location]/apache-maven-[Your Maven version] Java version: [You Java version], vendor: Oracle Corporation Java home: /Library/Java/JavaVirtualMachines/jdk[Your Java version].jdk/Contents/Home/jre [Some other stuff which may vary depending on the configuration and the OS of the computer]

    У нашому прикладі результат буде таким:

    Apache Maven 3.2.1 (ea8b2b07643dbb1b84b6d16e1f08391b666bc1e9; 2014-02-14T18:37:52+01:00)
    Maven home: /Applications/apache-maven-3.2.1
    Java version: 1.8.0, vendor: Oracle Corporation
    Java home: /Library/Java/JavaVirtualMachines/jdk1.8.0</b>.jdk/Contents/Home/jre
    Default locale: es_ES, platform encoding: UTF-8
    OS name: "mac os x", version: "10.9.2", arch: "x86_64", family: "mac"
    

Це єдине рішення.
Джарвіс,

0

Мені не дозволено коментувати відповідь pkyeck, яка не спрацювала для кількох людей, включаючи мене, тому я додаю окремий коментар як продовження до його відповіді:

В основному спробуйте додати змінну, яку він згадав у файлі .profile, якщо .bash_profile не працював. Він знаходиться у вашому домашньому каталозі, а потім перезапустіть термінал. це змусило мене працювати.

Очевидним блокувачем буде те, що у вас немає доступу для редагування файлу .profile, для чого використовуйте "дотик" для перевірки доступу та команду "sudo" для отримання доступу

  1. торкніться .profile

  2. vi .профіль

Ось змінна pkyeck припускає, що ми додали як рішення, яке працювало з редагуванням .profile для мене:

  1. експортувати M2_HOME = / apache-maven-3.3.3

  2. експортувати PATH = $ PATH: $ M2_HOME / bin


0

Для мене випробування вищевказаних методів спрацювало, тому я відкрив файл .bash_profile і додав наступний рядок у новий рядок для підключення до maven за допомогою короткого cmd:

alias mvn=/opt/apache-maven-3.6.3/bin/mvn

Перезапустіть термінал і натисніть mvn clean installcmd


0

Для мене я встановив AdoptOpenJDK 8 замість SE JDK 8. Для якого він не міг розпізнати команди JAVA_HOME або mvn.

Перевірте свій java_home /usr/libexec/java_home -V і використовуйте JAVA SE SDK, якщо він інший.

Потім виконайте наведені вище дії, щоб встановити maven і перевірте ще раз

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.