Maven 2는 저장소에 있지만 Maven 3에는 없습니다. Maven 3을 올바르게 설치하려면 어떻게해야합니까? 내가 찾은 가이드가 제대로 작동하지 않습니다.
Natty를 사용하고 있지만 아무것도 변경되지 않을 것이라고 확신합니다.
Maven 2는 저장소에 있지만 Maven 3에는 없습니다. Maven 3을 올바르게 설치하려면 어떻게해야합니까? 내가 찾은 가이드가 제대로 작동하지 않습니다.
Natty를 사용하고 있지만 아무것도 변경되지 않을 것이라고 확신합니다.
답변:
Mabun3은 Ubuntu 12.04의 기본값입니다 (정확함).
Maven2는 11.10의 최신 리포지토리입니다.
maven3에있는 PPA 오히려 부족한 것 - 여기에 하나입니다 코디 가 아닌 최신 버전이지만 가능 -.
가장 좋은 조언은 배포판에 사용 가능한 안정적인 버전을 유지하는 것입니다.
그러나 자신을 최신 상태로 유지하려면 코드를 다운로드하여 설치하는 것이 매우 간단합니다.
여기 에서 .tar.gz 파일을 다운로드하고 동일한 웹 페이지의 설치 지침을 따르십시오
64 비트 우분투 11.10에서 잘 작동하는 maven3 PPA가 있습니다.
sudo add-apt-repository ppa:natecarlson/maven3
sudo apt-get update && sudo apt-get install maven3
표준 저장소에서 maven2를 이미 설치 한 경우이를 대체하지 않지만 mvn3 바이너리를 제공합니다.
mvn3 대신 mvn이라는 바이너리를 사용하려면 다음을 수행하면됩니다.
sudo ln -s /usr/bin/mvn3 /usr/bin/mvn
문제는 오래되었지만 금입니다. 오늘 해결책을 찾아야했습니다. 여기 있습니다 maven3 이 이미 우분투 저장소에 포함되어 있기 때문에 안전하지 않은 저장소를 사용할 필요가 없습니다 . Ubuntu 14.04 LTS의 솔루션은 다음과 같습니다.
sudo apt-get install maven
sudo update-alternatives --config mvn
두 번째 명령으로 사용 된 버전을 설정하라는 메시지가 표시됩니다. 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"
희망이 조금 도움이되기를 바랍니다.
Maven을 설치해야 할뿐만 아니라 bin에 추가 해야하는 새로운 스크립트를 만들었습니다 .Ubuntu를 VirtualBox 게스트로 사용하는 경우 선택하고 기존 '.m2'및 기존 폴더가 포함되어 있거나 포함하지 않을 수있는 maven 폴더를 마운트하려고 시도합니다 설정.
Maven은 Windows 또는 Unix에서 실행되는 경우 동일하게 유지되므로 둘 사이에 동일한 Maven을 사용할 수 있습니다. 이것이 VirtualBox 설정입니다 ...
추신. / 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
이 문제를 해결할 수있는 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"
출처에 대한 확신이없는 PPA ( 개인 패키지 아카이브)에 익숙하지 않은 경우 이는 대안입니다.
어디에서 왔는지 모르는 경우 보안 측면에서 설치하지 마십시오.
링크 된 기사 에서 아파치에서 알려지고 신뢰할 수있는 최신 파일을 검색합니다. 최신 버전을 얻을 수 있습니다
\ # 최신 버전의 maven을 식별 latest = $ (컬 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) \#다운로드 해 wget http://www-us.apache.org/dist/maven/maven-3/$latest/binaries/apache-maven-$latest-bin.tar.gz
그런 다음에서 설치하십시오.
\ # 포장 풀기 sudo tar -zxf apache-maven- $ latest-bin.tar.gz -C / usr / local / \ # 심볼릭 링크를 만듭니다 sudo ln -s / usr / local / apache-maven- $ latest / bin / mvn / usr / bin / mvn
위의 링크와 내 게시물에 설명 된대로