我试图不了解太多关于 yum 或 maven 的知识。我继承了这段代码,我不想在这个环境中花费更多的时间。
我有好吃的。我的安装“有”(“也附加了”?“知道”?)两个 repos:Amazon 和 JPackage,据我所知,这是一种标准。 (实际上,这些存储库中的每一个都包含两个子存储库,但我认为这不会导致问题。)
当我要求yum安装maven2时,它拒绝了,说它从未听说过maven2。
当我让 yum 忽略 Amazon 安装 maven2 时,它会这样做,但它会安装相当旧的 Maven 2.0.9。我拥有的实际 pom.xml 需要更高版本。
当我用谷歌搜索 Maven 存储库时,我得到了 Maven 可以用来构建其他东西的存储库,而不是 Yum 可以用来安装 Maven 的存储库。 (我确实找到了一个存储库,其中包含让 Maven 构建 Yum 的东西。我认为 Google 在这一点上是在嘲笑我。)
所以,我所需要的只是指向包含安装 Maven 2.2.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 site。找到你想要的maven版本。上述 wget 语句的文件类型和使用镜像。
之后的过程很简单
从要提取 maven 的目录中运行 wget 命令。运行以下命令提取tar,tar xvf apache-maven-3.0.5-bin.tar.gz move maven to /usr/local/apache-maven mv apache-maven-3.0.5 /usr/local/apache-maven接下来将环境变量添加到您的 ~/.bashrc 文件中 export M2_HOME=/usr/local/apache-maven export M2=$M2_HOME/bin export PATH=$M2:$PATH 执行这些命令 source ~/.bashrc
6:.使用以下命令验证一切是否正常
mvn -version
您可以像这样将 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
并选择正确的版本。
.repo
文件中的 epel-$releasever
需要替换为 epel-6
,否则 yum install apache-maven
将失败并出现错误 404。
/etc/yum.repos.d/epel-apache-maven.repo
存储库文件中的此条目使其正常工作:baseurl=https://repos.fedorapeople.org/repos/dchen/apache-maven/epel-6/$basearch/
alternatives --config java
为了将来的参考和简单起见,那些不想解释太多但只是运行并使其尽快工作的懒人:
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
希望您喜欢这个复制和粘贴课程。
$releasever
。
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 -y apache-maven
对于 JVM 开发人员,这是一个 SDK 管理器,可满足您所需的所有工具。
安装sdkman:
yum install -y zip unzip
curl -s "https://get.sdkman.io" | bash
source "$HOME/.sdkman/bin/sdkman-init.sh"
安装 Maven:
sdk install maven
对于那些正在寻找在 2018 年安装 Maven 的方法的人:
$ sudo yum install maven
这些天来支持。
我最近刚刚了解了一个名为 fpm 的便捷打包工具。偶然发现这个问题,我想我可以试一试。事实证明,在阅读了@OrwellHindenberg 的答案后,很容易将 maven 打包成带有 fpm 的 RPM。
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
的文件,我们将把它作为 maven.sh 存储在新创建的 etc/profile.d 目录下,其中包含以下内容内容
export M3_HOME=/opt/apache-maven-3.1.0
export M3=$M3_HOME/bin
export PATH=$M3:$PATH
下载并解压 opt 目录中的 latest maven
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
现在可以通过rpm安装maven了
$ 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
不太好吃,但离家更近;)
exec bash
(假设您使用的是 bash)。
需要用yum安装吗?还有很多其他的可能性:
从 http://maven.apache.org/download.html 获取二进制文件并将其放入您的 /usr/bn
如果您使用的是 Eclipse,您可以获得 m2eclipse 插件 (http://m2eclipse.sonatype.org/),它捆绑了一个版本的 maven
/usr/bn
还是 /usr/bin
? /usr/local
等其他目录呢?
这就是我在 Amazon/AWS EMR v5 上所经历的。 (改编自之前的答案),拥有 Maven 和 Java8。
sudo wget https://repos.fedorapeople.org/repos/dchen/apache-maven/epel-apache-maven.repo -O /etc/yum.repos.d/epel-apache-maven.repo
sudo sed -i s/\$releasever/6/g /etc/yum.repos.d/epel-apache-maven.repo
sudo yum install -y apache-maven
sudo alternatives --config java
选择Java8
sudo alternatives --config javac
选择Java8
现在,如果你运行:
mvn -version
你应该得到:
Apache Maven 3.5.2 (138edd61fd100ec658bfa2d307c43b76940a5d7d; 2017-10-18T07:58:13Z)
Maven home: /usr/share/apache-maven
Java version: 1.8.0_171, vendor: Oracle Corporation
Java home: /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.171-8.b10.38.amzn1.x86_64/jre
Default locale: en_US, platform encoding: UTF-8
OS name: "linux", version: "4.14.47-56.37.amzn1.x86_64", arch: "amd64", family: “unix"
自 2014 年中期以来,Maven 已为 Fedora 打包,因此现在非常容易。只需键入
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
[...]
maven
可执行文件,而是 mvn
...
不只是 mvn
,对于任何实用程序,您都可以通过提供 yum whatprovides {command_name}
来了解自己
jpackage
获得的最好的 maven 是maven.noarchtbd
,它是v1.1
或maven2
,它是v2.0.4
...您的替代说明对我使用 maven v3 有很大帮助:)wget
的路径替换为从 maven.apache.org/download.cgi 获得的路径