web-dev-qa-db-ja.com

Maven 3をインストールするにはどうすればよいですか?

Ubuntuを使用していて、Maven 2からMaven 3にアップグレードする必要があります。誰かがMaven 3のインストールを手伝ってくれませんか?

27
Ashish Agarwal

この特定のトピックに関する有用な出版物が2つあります。

ネイトカールソンによって構築されたMaven 3を使用したPPA:

https://launchpad.net/~natecarlson/+archive/maven

23
Andrei Sosnin

それはリポジトリにありません、そして私の経験からの最良の解決策は Apache.orgからダウンロード し、それを/home/youruser/mavenにuntarしてから ここで説明

もちろん、これを行う前に、現在のmaven 2をアンインストールしてください。

9
ilcavero

自分が取り組んでいるプロジェクト用にUbuntu 12.10のセットアップを開始しました。システムの設定にはMaven 3が必要でしたが、ほとんどのドキュメントでは、MavenをUbuntuバージョン12.04以前にインストールする方法について言及しています。

手動インストールは、apt-getおよびUbuntuへのインストールに使用できるアプリケーションのリストを見つける場所に関して、ubuntuカーネルの詳細を調べたい場合に役立ちます。また、Ubuntu 13.04など、Ubuntuの最近のリリースでも、Ubuntu 12.10で以前と同じ問題に直面した場合に役立つ可能性があります。 。私が見つけた最高の文書は:

killertilapia.blogspot.com.au/2012/10/installing-maven-3-in-ubuntu-1204.html

手動インストール:

私が思いついたプロセス全体は次のとおりです:

  1. Sudo -H gedit /etc/apt/sources.list
  2. Sources.listファイルに次の行を追加します。

    deb http://ppa.launchpad.net/natecarlson/maven3/ubunt 正確なメイン

    deb-src http://ppa.launchpad.net/natecarlson/maven3/ubunt 正確なメイン

  3. Sudo apt-get update && Sudo apt-get install maven3

  4. Sudo ln -s/usr/share/maven3/bin/mvn/usr/bin/mvn

注意1:コマンド「Sudo add-apt-repository ppa:natecarlson/maven3」はUbuntuでは機能せず、apt-getを機能させるには「Sudo add-apt-repository -rm ppa:natecarlson/maven3」を実行する必要がありました。再び。

注意2:Davidのおかげで、ステップ4を実行する前に、以前のバージョンのmavenへの既存のシンボリックリンクを削除する必要があります。

自動インストール:

Sudo apt-get remove maven2
Sudo apt-get update
Sudo apt-get install maven

手動インストールと自動インストールの両方について、いくつかの情報 ここ も利用できます。

3
AmirHd

Linuxに普遍的であることを目的として書いた次のスクリプトを試してくださいand VirtualBoxの使用の可能性を検出し、ゲストから可能なファイルをマウントしようとします(共有用に設定されている場合)。

#!/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
0
thejartender