Подтвердить что ты не робот

Как установить Maven с Yum?

Я стараюсь не многому научиться ни о yum, ни о maven. Я унаследовал этот код, и я не хочу тратить больше времени, чем в этой среде.

У меня есть yum. Моя установка "имеет" ( "тоже прикреплена"? "Знает о"?) Два репозитория: Amazon one и JPackage, который я понимаю, является чем-то вроде стандарта. (Фактически, каждый из этих репозиториев состоит из двух субрепозиториев, но я не думаю, что это вызывает проблему.)

Когда я попросил yum установить maven2, он отказался, заявив, что никогда не слышал о maven2.

Когда я попросил yum установить maven2, игнорируя Amazon, он делает это, но он устанавливает Maven 2.0.9, который довольно старый. У фактического pom.xml, который у меня есть, требуется более высокая версия.

Когда я Google для репозиториев Maven, я получаю репозитории, которые Maven может использовать для создания других вещей, а не репозиториев, которые Yum может использовать для установки Maven. (Я нашел репозиторий, содержащий вещь, которая позволила Maven построить Yum. Я думаю, что Google насмехается над этим на данный момент.)

Итак, все, что мне нужно, это файл repo, который указывает на репо, в котором содержится все, что мне нужно для установки Maven 2.2.1.

Если бы не все эти трудосберегающие устройства, я, вероятно, мог бы проделать определенную работу.

4b9b3361

Ответ 1

Икар ответил на очень похожий вопрос для меня. Его не используют "yum", но все равно должны работать для ваших целей. Попробуйте,

wget http://mirror.olnevhost.net/pub/apache/maven/maven-3/3.0.5/binaries/apache-maven-3.0.5-bin.tar.gz

просто перейдите на сайт maven. Найдите версию maven, которую вы хотите. Тип файла и используйте зеркало для инструкции wget выше.

Впоследствии процесс прост

  • Запустите команду wget из каталога, который вы хотите извлечь из maven.
  • выполните следующее, чтобы извлечь tar,

    tar xvf apache-maven-3.0.5-bin.tar.gz
    
  • переместить maven в /usr/local/apache -maven

    mv apache-maven-3.0.5  /usr/local/apache-maven
    
  • Затем добавьте переменные env в ваш файл ~/.bashrc

    export M2_HOME=/usr/local/apache-maven
    export M2=$M2_HOME/bin 
    export PATH=$M2:$PATH
    
  • Выполните следующие команды

    источник ~/.bashrc

6:. Убедитесь, что все работает со следующей командой

    mvn -version

Ответ 2

Вы можете добавить maven в библиотеки yum следующим образом:

wget http://repos.fedorapeople.org/repos/dchen/apache-maven/epel-apache-maven.repo -O /etc/yum.repos.d/epel-apache-maven.repo

Теперь вы можете установить maven следующим образом:

yum install apache-maven

После выполнения maven 3 будет установлено, и mvn -version покажет вам, какая у вас версия - у меня было 3.2.1.

Это отлично сработало для меня на CentOS 6 за одним исключением. Он установил OpenJDK 1.6 и сделал его стандартной версией Java, хотя я уже вручную установил JDK 8 (возможно, потому, что я его вручную установил). Чтобы изменить его, используйте alternatives:

alternatives --config java
alternatives --config javac

и выберите правильную версию.

Ответ 3

Для будущей ссылки и для простоты для ленивых людей, которые не хотят много объяснений, но просто запускают вещи и делают работу как можно скорее:

1) sudo wget https://repos.fedorapeople.org/repos/dchen/apache-maven/epel-apache-maven.repo -O /etc/yum.repos.d/epel-apache-maven.repo

2) sudo sed -i s/\$releasever/6/g /etc/yum.repos.d/epel-apache-maven.repo

3) sudo yum install -y apache-maven

4) mvn --version

Надеюсь, вам понравится эта копия и вставка сеанса.

Ответ 4

Недавно я узнал о удобном упаковочном инструменте fpm. Наткнувшись на этот вопрос, я подумал, что могу попробовать. Оказывается, после прочтения ответа @OrwellHindenberg, легко упаковать maven в RPM с fpm.

yum install -y gcc make rpm-build ruby-devel rubygems
gem install fpm

создать каталог проекта и разместить структуру каталогов пакета

mkdir maven-build
cd maven-build
mkdir -p etc/profile.d opt

создайте файл, который мы установим в /etc/profile.d/maven.sh, мы сохраним его в новом каталоге etc/profile.d как maven.sh со следующим содержимым

export M3_HOME=/opt/apache-maven-3.1.0
export M3=$M3_HOME/bin
export PATH=$M3:$PATH

загрузите и распакуйте последний maven в каталоге opt

wget http://www.eng.lsu.edu/mirrors/apache/maven/maven-3/3.1.0/binaries/apache-maven-3.1.0-bin.tar.gz
tar -xzf apache-maven-3.1.0-bin.tar.gz -C opt

наконец, постройте RPM

fpm -n maven-3.1.0 -s dir -t rpm etc opt

Теперь вы можете установить maven через rpm

$ rpm -Uvh maven-3.1.0-1.0-1.x86_64.rpm 
Preparing...                ########################################### [100%]
   1:maven-3.1.0            ########################################### [100%]

и альта

$ which mvn
/opt/apache-maven-3.1.0/bin/mvn

не совсем yum, но ближе к дому;)

Ответ 5

Вам нужно установить его с помощью yum? Есть и другие возможности:

  • Возьмите двоичный код из http://maven.apache.org/download.html и поместите его в свой /usr/bn
  • Если вы используете Eclipse, вы можете получить плагин m2eclipse (http://m2eclipse.sonatype.org/), который связывает версию maven

Ответ 6

Maven упакован для Fedora с середины 2014 года, так что теперь это довольно легко. Просто введите

sudo dnf install maven

Теперь протестируйте установку, просто запустите maven в произвольном каталоге

mvn

И это не удастся, потому что вы не указали цель, например. mvn package

[INFO] Scanning for projects...
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 0.102 s
[INFO] Finished at: 2017-11-14T13:45:00+01:00
[INFO] Final Memory: 8M/176M
[INFO] ------------------------------------------------------------------------
[ERROR] No goals have been specified for this build

[...]

Ответ 7

yum install -y yum-utils

yum-config-manager --add-repo http://repos.fedorapeople.org/repos/dchen/apache-maven/epel-apache-maven.repo

yum-config-manager --enable epel-apache-maven

yum install apache-maven

Ответ 8

Не только mvn, для любого использования вы можете узнать себя, указав yum whatprovides {command_name}