Как я устанавливаю Знатока 3?

Знаток 2 находится в репозиториях, но не Знатоке 3. Как я правильно устанавливаю Знатока 3? Руководства, которые я нашел, действительно не работают правильно.

Я использую Аккуратный, но я уверен, что это ничего не изменит.

33
задан 29 July 2014 в 12:31

8 ответов

Maven3 является значением по умолчанию в (точной) Ubuntu 12.04

Maven2 является последним в репозиториях для 11,10.

PPAs для maven3 кажутся довольно недостаточными - вот один для индивидуалиста - хотя не доступная очень последняя версия.

Лучший совет состоит в том, чтобы остаться со стабильной версией, доступной для Вашей версии дистрибутива.

Однако, если Вам нравится держать себя в курсе, это очень просто, чтобы загрузить код и установить себя.

Загрузите .tar.gz файл отсюда и следуйте за руководством установки на той же веб-странице

25
ответ дан 23 November 2019 в 00:33

Я сделал новый сценарий, который должен не только установить Знатока +, добавляет он к мусорному ведру, но берет, если Вы используете Ubuntu в качестве гостя VirtualBox, и затем пытается смонтировать существующий '.m2' и папку знатока, которая не может содержать существующие настройки.

Знаток остается тем же, если оно работает на Windows или Unix, таким образом, можно использовать того же Знатока между обоими, это - установка VirtualBox...

PS. Отметьте сборку сценариев, которые могут монтировать/размонтировать совместно используемые папки от/usr/local/bin :)

#!/bin/bash
#Author: Yucca Nel http://thejarbar.org
#Will restart system
PATH="/sbin:/usr/sbin:/bin:/usr/bin:/usr/local/bin:."
export PATH

#Modify these variables as needed...
tempWork=/tmp/work
defaultStartScript=/etc/init.d/rc.local
defaultMaven=3.0.3
locBin=/usr/local/bin
mavenUsrLib=/usr/lib/maven

mkdir -p $mavenUsrLib
mkdir -p $HOME/.m2

read -p "Please [Enter] full path name of your local startup script ($defaultStartScript is the default). Please
make sure on this before providing a value by consulting documentation for your system:" locStartScript
locStartScript=${locStartScript:-$defaultStartScript}

read -p "Please [Enter] Maven Version ($defaultMaven is default):" mavenVersion
mavenVersion=${mavenVersion:-$defaultMaven}


if [ ! -f $locStartScript ]
then
    echo "The file you provided could not be found. Remember to include the full path and try again. Exiting in 7 secs..."
    sleep 7
    exit 1
fi

mkdir -p /$tempWork
cd /$tempWork

sudo wget http://mirrors.powertech.no/www.apache.org/dist//maven/binaries/apache-maven-$mavenVersion-bin.tar.gz
tar -zxvf ./*

#Move it to a more logical location
sudo mv -f ./apache-maven-$mavenVersion $mavenUsrLib/

#If you have Maven on Windows and use VirtualBox, you can set up the maven to be a virtualbox shared folder.
#The name must match the name used below (ignore if irrelevant to you).


if [ -f /sbin/mount.vboxsf ]
then
    sudo /sbin/umount $HOME/.m2
    sudo /sbin/umount $mavenUsrLib
    sudo /sbin/mount.vboxsf .m2 $HOME/.m2
    sudo /sbin/mount.vboxsf maven $mavenUsrLib
fi

if mountpoint -q $HOME/.m2 &&  mountpoint -q $mavenUsrLib
then
#Add it to the start script to automate process...
    sudo sed -ie '$d' $locStartScript
if ! grep "sudo /sbin/mount.vboxsf .m2 $HOME/.m2" $locStartScript
then
    echo "sudo /sbin/mount.vboxsf .m2 $HOME/.m2" | sudo tee -a $locStartScript
fi

if ! grep "sudo /sbin/mount.vboxsf maven $mavenUsrLib" $locStartScript
then
    echo "sudo /sbin/mount.vboxsf maven $mavenUsrLib" | sudo tee -a $locStartScript
fi
    echo "exit 0" | sudo tee -a $locStartScript
    sudo chmod +x $locStartScript

#Create a mount and unmount script file...
    rm -rf $tempWork/*
    echo '#!/bin/bash' > $tempWork/maven-mount.sh
    echo "sudo /sbin/mount.vboxsf .m2 $HOME/.m2" >> $tempWork/maven-mount.sh
    echo "sudo /sbin/mount.vboxsf maven $mavenUsrLib" >> $tempWork/maven-mount.sh
    echo "echo 'mounted maven'" >> $tempWork/maven-mount.sh
    echo "exit 0" >> $tempWork/maven-mount.sh

    echo '#!/bin/bash' > $tempWork/maven-umount.sh
    echo "sudo umount $HOME/.m2" >> $tempWork/netbeans-umount.sh
    echo "sudo umount $mavenUsrLib" >> $tempWork/netbeans-umount.sh
    echo "echo 'unmounted maven'" >> $tempWork/maven-mount.sh
    echo 'exit 0' >> $tempWork/maven-umount.sh

#Script for mounting ALL VirtualBox shared solders....
#If there isn't one create one...
if [ ! -f $locBin/mount-all-from-host.sh ]
then
    echo '#!/bin/bash' > $tempWork/mount-all-from-host.sh
    echo "sudo /sbin/mount.vboxsf .m2 $HOME/.m2" | sudo tee -a $tempWork/mount-all-from-host.sh
    echo "sudo /sbin/mount.vboxsf maven $mavenUsrLib" | sudo tee -a $tempWork/mount-all-from-host.sh
    echo "exit 0" | sudo tee -a $tempWork/mount-all-from-host.sh

#Otherwise if there is one, but no mount, add one...
elif ! grep "sudo /sbin/mount.vboxsf .m2 $HOME/.m2" $locBin/mount-all-from-host.sh
then
    sudo sed -ie '$d' $locBin/mount-all-from-host.sh
    echo "sudo /sbin/mount.vboxsf .m2 $HOME/.m2" | sudo tee -a $locBin/mount-all-from-host.sh
    echo "exit 0" | sudo tee -a $locBin/mount-all-from-host.sh

elif ! grep "sudo /sbin/mount.vboxsf maven $mavenUsrLib" $locBin/mount-all-from-host.sh
then
    sudo sed -ie '$d' $locBin/mount-all-from-host.sh
    echo "sudo /sbin/mount.vboxsf maven $mavenUsrLib" | sudo tee -a $locBin/mount-all-from-host.sh
    echo "exit 0" | sudo tee -a $locBin/mount-all-from-host.sh

fi

#Script for unmounting ALL VirtualBox shared folders...
#If there isn't one create one...
if [ ! -f $locBin/umount-all-from-host.sh ]
then
    echo '#!/bin/bash' > $tempWork/umount-all-from-host.sh
    echo "sudo umount -a -t vboxsf" | sudo tee -a $tempWork/umount-all-from-host.sh
    echo "echo 'unmounted all VirtualBox shared folders'" | sudo tee -a $tempWork/umount-all-from-host.sh
    echo "exit 0" | sudo tee -a $tempWork/umount-all-from-host.sh
fi

    sudo chmod +x $tempWork/*
    sudo mv -f $tempWork/*.sh $locBin/
    rm -rf $tempWork
fi

sudo ln -f -s $mavenUsrLib/apache-maven-$mavenVersion/bin/* /usr/bin/
sudo rm -rf $tempWork
sudo reboot

exit 0
2
ответ дан 23 November 2019 в 00:33

Вот maven3 PPA, который хорошо работал для меня на Ubuntu 11.10 на 64 бита

sudo add-apt-repository ppa:natecarlson/maven3
sudo apt-get update && sudo apt-get install maven3

Если у Вас будет maven2, уже установленный от канонического repos, то это не заменит его, но даст Вам mvn3 двоичный файл.

Если Вы предпочитаете иметь двоичный файл, названный mvn вместо mvn3, можно просто сделать следующее:

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

Источник

25
ответ дан 23 November 2019 в 00:33

Я обновил, но получил classnotfound ошибку. Зафиксировать это:

После пребывания в течение некоторого времени, пробуя различные комбинации, я нашел, что это вызвано тем, что у меня есть и набор M2_HOME и M3_HOME в моих переменных среды. После того как я удалил M2_HOME из своих переменных среды, я мог вернуть эту работу снова. Может быть это могло сэкономить некоторое серьезное время для кого-то.

1
ответ дан 23 November 2019 в 00:33

Вопрос является старым, но золотым. Сегодня я должен был найти решение. Здесь мы идем. Нет никакой потребности использовать небезопасный репозиторий, потому что maven3 уже включен в Ubuntu repos. Решение в Ubuntu 14.04 LTS будет похоже:

  • sudo apt-get install maven
  • sudo update-alternatives --config mvn

С 2-й командой Вас просят установить используемую версию. Можно отличить корректные каталоги путем выбора пути, где maven2 НЕ является частью его.

   *0    /usr/share/maven2/bin/mvn   200       Auto-Modus
    1    /usr/share/maven/bin/mvn    150       manueller Modus
    2    /usr/share/maven2/bin/mvn   200       manueller Modus

В моем случае я должен был выбрать 1

С данной командой mvn -v можно проверить, если установка успешно выполнилась и выбрали ли Вы правильную версию. Ниже Вас имеют пример возвращаемого значения.

  ~$ mvn -version
  Apache Maven 3.0.5
  Maven home: /usr/share/maven
  Java version: 1.7.0_75, vendor: Oracle Corporation
  Java home: /usr/lib/jvm/java-7-openjdk-amd64/jre
  Default locale: de_DE, platform encoding: UTF-8
  OS name: "linux", version: "3.13.0-45-generic", arch: "amd64", family: "unix"

Надежда это помогает Вам немного.

4
ответ дан 23 November 2019 в 00:33

Вот maven3 PPA, который может решить этот вопрос.

Следуйте за установкой:

sudo apt-get purge maven maven2 maven3
sudo add-apt-repository ppa:andrei-pozolotin/maven3
sudo apt-get update && sudo apt-get install maven3

И теперь Вы установили maven3:

nazar@lelyak-desktop ~ $ mvn -version
Apache Maven 3.3.3 (7994120775791599e205a5524ec3e0dfe41d4a06; 2015-04-22T14:57:37+03:00)
Maven home: /usr/share/maven3
Java version: 1.7.0_80, vendor: Oracle Corporation
Java home: /usr/lib/jvm/java-7-oracle/jre
Default locale: en_US, platform encoding: UTF-8
OS name: "linux", version: "3.13.0-24-generic", arch: "amd64", family: "unix"

Свяжитесь с панелью запуска

2
ответ дан 23 November 2019 в 00:33

Загрузите знатока с официального сайта знатока и извлечения.

Переместите каталог приложения в/usr/local

sudo cp -R apache-maven-X.X.X /usr/local

Сделайте гибкую ссылку в/usr/bin для универсального доступа mvn

sudo ln -s /usr/local/apache-maven-X.X.X/bin/mvn /usr/bin/mvn

Установка Verifify mvn

mvn --version
0
ответ дан 23 November 2019 в 00:33

Если Вы не довольны PPA (персональный архив пакета), где у Вас нет обеспечения происхождения, это - альтернатива.

С точки зрения безопасности, если Вы не знаете, куда она прибыла из, не устанавливают его.

В моей связанной статье я получаю последний файл от апача, который является известным и надежным источником. Можно получить последнюю версию

\#identify the latest version of maven
    latest=$(curl http://www-us.apache.org/dist/maven/maven-3/ | tac | sed -ne 's/[^0-9]*\(\([0-9]\.\)\{0,3\}[0-9]\).*/\1/p' | head -1)
\#download it
    wget http://www-us.apache.org/dist/maven/maven-3/$latest/binaries/apache-maven-$latest-bin.tar.gz

затем установите его от

\#Unpack it
    sudo tar -zxf apache-maven-$latest-bin.tar.gz -C /usr/local/
\#create a sym link to it
    sudo ln -s /usr/local/apache-maven-$latest/bin/mvn /usr/bin/mvn

как обрисовано в общих чертах в ссылке выше и моем сообщении на

0
ответ дан 23 November 2019 в 00:33

Другие вопросы по тегам:

Похожие вопросы: