yum安装maven过程记录

本文记录了在虚拟机上通过yum安装maven遇到的版本不匹配问题,包括yum-config-manager报错、python版本问题以及因网络限制导致的下载失败。最终通过更改python软连接和调整配置文件解决了问题,但发现yum安装并非必要,直接使用maven即可。
部署运行你感兴趣的模型镜像

个人博客导航页(点击右侧链接即可打开个人博客):大牛带你入门技术栈 

安装maven,环境虚拟机:

1.安装yum配置工具

$ yum install -y yum-utils

2.使用配置工具配置第三方epel源仓库

[root@ab0be27c0bd3 ~]# yum-config-manager --add-repo http://repos.fedorapeople.org/repos/dchen/apache-maven/epel-apache-maven.repo


Traceback (most recent call last):
  File "/usr/bin/yum-config-manager", line 6, in <module>
    import yum
ImportError: No module named yum

执行这一步报错

Traceback (most recent call last):
  File "/usr/bin/yum-config-manager", line 6, in <module>
    import yum
ImportError: No module named yum

根据报错查看文件:

[root@ab0be27c0bd3 ~]# cat /usr/bin/yum-config-manager | head -n 10


#!/usr/bin/python -tt

import os, os.path
import sys
import re
import yum
sys.path.insert(0,'/usr/share/yum-cli')
from utils import YumUtilBase
import logging
import fnmatch

说是找不到yum模块,但是yum命令是可以正常使用,百度说是版本不匹配,yum使用python写的

查看python的版本

[root@ab0be27c0bd3 ~]# whereis python


python: /usr/bin/python /usr/bin/python2.7 /usr/bin/python2.7-config /usr/bin/python2.6 /usr/lib/python2.7 /usr/lib64/python2.7 /etc/python /usr/local/bin/python /usr/local/bin/python2.7 /usr/local/bin/python2.7-config /usr/local/lib/python2.7 /usr/include/python2.7 /usr/share/man/man1/python.1.gz
[root@ab0be27c0bd3 ~]#
[root@ab0be27c0bd3 ~]#
[root@ab0be27c0bd3 ~]# python -V
Python 2.7.9

可以看到有多个版本,使用中的是2.7.9

看一下 yum使用的版本

[root@ab0be27c0bd3 ~]# cat /usr/bin/yum


#!/usr/bin/python
import sys
try:
    import yum
except ImportError:
    print >> sys.stderr, """\

其实看不出来呀,再看下python的软连接:

[root@ab0be27c0bd3 ~]# ls -il /usr/bin | grep python
33555577 -rwxr-xr-x   1 root  root       11216 Dec  1  2015 abrt-action-analyze-python
34184332 lrwxrwxrwx   1 root  root          24 Jul 19  2019 python -> /usr/local/bin/python2.7
33827326 lrwxrwxrwx   1 root  root           9 Nov 22  2016 python2 -> python2.7
34184333 lrwxrwxrwx   1 root  root           7 Nov 22  2016 python2.6 -> python2
33827328 -rwxr-xr-x   1 root  root        7136 Nov 20  2015 python2.7
33827329 -rwxr-xr-x   1 root  root        1835 Nov 20  2015 python2.7-config
33827327 lrwxrwxrwx   1 root  root          16 Nov 22  2016 python2-config -> python2.7-config
33827325 lrwxrwxrwx   1 root  root          14 Nov 22  2016 python-config -> python2-config

其实有点没看懂这个,在我看来,python,python2,python2.6都是指向的是python2.7呀,那/usr/bin/yum和/usr/bin/yum-config-manager使用的版本应该一样的,但是结果就是报错,根据百度的把/usr/bin/yum-config-manager改成2.6

#!/usr/bin/python2.6 -tt

再执行命令,居然就不报那个错了+_+||,但是报下面的错:

Loaded plugins: fastestmirror, langpacks
adding repo from: http://repos.fedorapeople.org/repos/dchen/apache-maven/epel-apache-maven.repo
grabbing file http://repos.fedorapeople.org/repos/dchen/apache-maven/epel-apache-maven.repo to /etc/yum.repos.d/epel-apache-maven.repo
Could not fetch/save url http://repos.fedorapeople.org/repos/dchen/apache-maven/epel-apache-maven.repo to file /etc/yum.repos.d/epel-apache-maven.repo: [Errno 14] curl#7 - "Failed connect to repos.fedorapeople.org:80; Connection refused"

因为我是在虚拟机上执行的,无法连接外网,所以需要开通外网(直接用的公司的工具,点下开通外网就行,具体怎么给虚拟机开通外网还没研究) ,开通外网后这步命令执行成功。

3.启用仓库

[root@ab0be27c0bd3 ~]# yum-config-manager --enable epel-apache-maven


Loaded plugins: fastestmirror, langpacks
============================================================================== repo: epel-apache-maven ==============================================================================
[epel-apache-maven]
async = True
bandwidth = 0
base_persistdir = /var/lib/yum/repos/x86_64/7
baseurl = http://repos.fedorapeople.org/repos/dchen/apache-maven/epel-7/x86_64/

4.安装maven

[root@ab0be27c0bd3 ~]# yum install -y apache-maven

There was a problem importing one of the Python modules
required to run yum. The error leading to this problem was:

   No module named yum

Please install a package which provides this module, or
verify that the module is installed correctly.

It's possible that the above module doesn't match the
current version of Python, which is:
2.7.9 (default, Jul 19 2019, 14:45:37)
[GCC 4.8.5 20150623 (Red Hat 4.8.5-16)]

If you cannot solve this problem yourself, please go to
the yum faq at:
  http://yum.baseurl.org/wiki/Faq

??版本又不匹配?

然后把/usr/bin/yum也改成2.6

#!/usr/bin/python2.6
import sys
try:

不说版本不一致了,然鹅

[root@ab0be27c0bd3 ~]# yum install -y apache-maven

▽
Loaded plugins: fastestmirror, langpacks

▽
#! /usr/bin/python-ext-down
base                                                                                                                                                          | 3.6 kB  00:00:00
didi_jenkins_enable                                                                                                                                           | 1.5 kB  00:00:00
didi_op_toa_enable                                                                                                                                            | 1.5 kB  00:00:00
didi_txjenkins_enable                                                                                                                                         | 1.5 kB  00:00:00
epel                                                                                                                                                          | 5.3 kB  00:00:00
epel-apache-maven                                                                                                                                             | 3.3 kB  00:00:00
extras                                                                                                                                                        | 3.4 kB  00:00:00
updates                                                                                                                                                       | 3.4 kB  00:00:00
Traceback (most recent call last):
  File "/usr/libexec/urlgrabber-ext-down", line 22, in <module>
    from urlgrabber.grabber import \
ImportError: No module named urlgrabber.grabber


Exiting on user cancel

然后vim /usr/libexec/urlgrabber-ext-down

把头改成

#! /usr/bin/python-ext-down

再执行打印了一堆东西,也不知道成功没,使用命令mvn -version,说命令找不到

最后换了种方式:

//下载
# wget http://mirrors.cnnic.cn/apache/maven/maven-3/3.5.4/binaries/apache-maven-3.5.4-bin.tar.gz
//解压
# tar -zxvf apache-maven-3.5.4-bin.tar.gz
//移动
# mv apache-maven-3.5.4 /usr/loca/apache-maven-3.5.4
//配置maven
# vim /etc/profile
export MAVEN_HOME=/usr/loca/apache-maven-3.5.4
export PATH=$MAVEN_HOME/bin:$PATH
//使配置生效
# source /etc/profile

黑人问号,所以也没有用的yum就是了,和标题不符。反正就用这个maven

终于搞好了maven,接着就是构建启动项目,构建项目的时候又报错:

The JAVA_HOME environment variable is not defined correctly
This environment variable is needed to run this program
NB: JAVA_HOME should point to a JDK not a JRE

百度解决方法,去到我maven安装目录下修改启动文件:

# vim /usr/local/apache-maven-3.5.4/bin/mvn

//加上
JAVA_HOME=`/usr/local/jdk1.8.0_65`

附Java/C/C++/机器学习/算法与数据结构/前端/安卓/Python/程序员必读/书籍书单大全:

(点击右侧 即可打开个人博客内有干货):技术干货小栈
=====>>①【Java大牛带你入门到进阶之路】<<====
=====>>②【算法数据结构+acm大牛带你入门到进阶之路】<<===
=====>>③【数据库大牛带你入门到进阶之路】<<=====
=====>>④【Web前端大牛带你入门到进阶之路】<<====
=====>>⑤【机器学习和python大牛带你入门到进阶之路】<<====
=====>>⑥【架构师大牛带你入门到进阶之路】<<=====
=====>>⑦【C++大牛带你入门到进阶之路】<<====
=====>>⑧【ios大牛带你入门到进阶之路】<<====
=====>>⑨【Web安全大牛带你入门到进阶之路】<<=====
=====>>⑩【Linux和操作系统大牛带你入门到进阶之路】<<=====

天下没有不劳而获的果实,望各位年轻的朋友,想学技术的朋友,在决心扎入技术道路的路上披荆斩棘,把书弄懂了,再去敲代码,把原理弄懂了,再去实践,将会带给你的人生,你的工作,你的未来一个美梦。

您可能感兴趣的与本文相关的镜像

Stable-Diffusion-3.5

Stable-Diffusion-3.5

图片生成
Stable-Diffusion

Stable Diffusion 3.5 (SD 3.5) 是由 Stability AI 推出的新一代文本到图像生成模型,相比 3.0 版本,它提升了图像质量、运行速度和硬件效率

### 安装 Maven on Linux 的指南 要在 Linux 上安装 Apache Maven,可以按照以下方法完成配置。以下是详细的说明: #### 1. 更新系统包管理器 在开始之前,建议先更新系统的软件包列表以确保获取最新版本的依赖项。 ```bash sudo apt update ``` 此命令适用于基于 Debian/Ubuntu 的发行版[^3]。 对于 Red Hat/CentOS/Fedora 发行版,则应运行: ```bash sudo yum update ``` #### 2. 安装 Java 开发环境 (JDK) Maven 需要 Java 环境支持,因此需要确认已安装 JDK 并设置 `JAVA_HOME` 变量。推荐使用 OpenJDK 或 Oracle JDK 版本 1.8 或更高版本。 可以通过以下命令安装 OpenJDK 11(或其他所需版本): ```bash sudo apt install default-jdk ``` 验证 Java 是否正确安装并显示其版本号: ```bash java -version ``` 如果输出类似于以下内容则表示成功: ``` openjdk version "11.0.11" ... ``` 同时需检查 `JAVA_HOME` 路径是否正确设定。通常情况下,在大多数现代 Linux 发行版中会自动处理该变量;但如果未定义或者路径有问题可手动编辑 `.bashrc` 文件来添加如下行: ```bash export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64 export PATH=$PATH:$JAVA_HOME/bin ``` 之后重新加载 shell 配置文件使更改生效: ```bash source ~/.bashrc ``` #### 3. 下载并解压 Maven 归档文件 访问官方 Apache Maven 页面下载最新的二进制分发压缩包链接地址 https://maven.apache.org/download.cgi 。复制稳定发布的 tar.gz 地址用于 wget 工具执行下载动作: ```bash cd ~ wget https://downloads.apache.org/maven/maven-3/3.x.y/binaries/apache-maven-3.x.y-bin.tar.gz tar xf apache-maven-*.tar.gz mv apache-maven-* /opt/maven ``` 这里假设将解压后的目录移动至 `/opt/maven` 中存储以便于全局调用[^4]。 #### 4. 设置环境变量 为了能够在任何地方通过命令行直接调用 mvn ,还需要进一步调整用户的 Shell Profile 来加入新的 MAVEN_HOME 和 PATH 参数声明。继续修改个人专属 Bash 初始化脚本即 .bashrc 添加下面几条记录进去即可实现目标功能需求效果目的作用意义价值所在之处体现出来表现形式呈现方式展现形态展示状态状况情形情况情景局势局面态势趋势走向动向倾向偏向偏重侧重重点要点关键核心要害命门瓶颈制约限制约束束缚羁绊牵制阻碍障碍妨碍干扰打扰扰乱破坏摧毁毁灭消灭消除去除除去去掉删去删除剔除排除排斥抵制抗拒反抗对抗抵触冲突矛盾分歧差异区别差别不同不一致不对劲别扭难受不舒服不适不便不利不好坏处弊端害处祸患灾难厄运困境绝境险境危局危机危险风险威胁恐吓骚扰侵害侵犯冒犯冲撞碰撞撞击冲击震动震撼摇撼动摇摆动波动起伏跌宕曲折坎坷崎岖艰险艰难困苦辛酸悲惨凄凉可怜同情怜悯关怀关心照顾体贴体谅理解领会领悟顿悟觉悟觉醒警醒提醒提示告知通知通告公告宣告宣布发表发布公布公开揭露曝光揭穿戳破拆穿打碎粉碎击毁摧毁毁灭灭亡消亡湮灭泯灭消失逝去离去离开走开远离疏远冷淡冷漠无情残酷残忍暴虐凶残恶毒阴险狡诈诡谲奸诈欺诈欺骗蒙骗哄骗蛊惑诱惑引诱勾引怂恿煽动鼓吹宣扬宣传倡导提倡提议建议劝告忠告警告警示戒备警惕提防防范防御抵御抵抗抗衡抗争挣扎拼搏奋斗努力尝试试图企图谋划计划打算盘算考虑思考思索冥想沉思反思反省检讨审查审核评估评价评判判断裁定裁决决定决策抉择选项选择挑选选取采用采纳接受接收接纳收留容纳包容宽容容忍谅解原谅宽恕饶恕赦免免除豁免释放解放拯救救赎救助援助帮助协助帮忙辅助辅佐襄助匡助扶持支撑支撐撑持堅持坚持坚守守卫护卫保护庇护遮蔽掩护隐蔽隐藏躲藏逃避回避躲避规避避让退缩收缩缩减减少削减降低减弱削弱软弱无力乏力疲惫疲劳疲倦劳累辛苦艰苦困难艰巨挑战考验试验测试检验检测查证核实认证认可承认同意赞同赞成欣赏赞美夸奖表扬鼓励激励鼓舞激发刺激触动感动感化感染传染传播扩散蔓延泛滥成灾酿祸惹事生非是非曲直公正公平正义正气浩然凛然大义凛然慷慨激昂愤慨愤怒恼怒生气怨恨仇恨敌视仇视蔑视轻视忽视无视漠视无动于衷麻木不仁铁石心肠冷酷无情毫无人性丧失人性违背道义背离原则偏离轨道出轨失控失衡失调失常反常异常怪异奇特奇异稀奇罕见少见鲜为人知秘而不宣讳莫如深讳疾忌医讳言避谈避而不见敬而远之望而却步畏首畏尾瞻前顾后犹豫不定举棋不定拿不定主意下不了决心做不出决定无法取舍难以割舍恋恋不舍依依惜别难分难舍惺惺相惜同病相怜互相同情互相理解相互信任彼此信赖肝胆相照荣辱与共休戚相关息息相关命运相连生死攸关利害关系利益关联得失考量成败论断胜负较量竞争角逐竞赛比赛竞技比拼较量较劲斗法过招交锋对决决战决胜负败北失败挫折打击磨练锻炼历练洗礼净化升华超越突破创新创造发明发现探索研究学习教育培养训练提升提高增强强化巩固加强加深加厚加重增益收益收获成果成就功绩功劳贡献牺牲奉献付出给予赠予馈赠施舍布施慈善仁慈慈悲善举善意好意美意心意诚意真心实意诚挚真挚深切深厚浓烈强烈剧烈猛烈激烈热情热烈欢迎接待招待款待优待礼遇待遇报酬回报回馈反馈反应响应感应共鸣共振谐振同步协调配合协作合作团结联合联盟同盟伙伴搭档同伴同事同仁同行同业职业事业工作劳动生产制造建造建设创建创立开创开辟开拓扩展扩充扩大放大倍增增多增加增长增高升高上升升起腾飞飞跃跳跃蹦跳弹跳反弹回弹恢复复苏复活再生重生新生出生诞生降生问世面世露脸现身亮相登台登场表演演出戏剧舞台剧本台词对话交流沟通交往交际社交互动活动运作运营运转循环轮回旋转转动滚动翻滚波涛汹涌澎湃奔腾咆哮呼啸呐喊叫嚷喧哗吵闹嘈杂混乱紊乱凌乱散乱零乱纷乱繁乱复杂繁琐麻烦困扰困惑迷惑迷茫迷惘彷徨徘徊踌躇犹豫迟疑怀疑质疑质问询问打听探听侦察侦查调查考查考察考核测验考试实验实践实习实训培训培育养育抚养赡养孝顺尊敬尊重重视珍视珍惜爱护关爱疼爱宠爱溺爱娇惯纵容放任不管不顾不理不睬不屑一顾嗤之以鼻鄙夷不屑嫌弃厌恶讨厌反感厌烦烦躁焦虑紧张压力压迫压抑抑郁沮丧灰心失望绝望放弃投降认输服输屈服臣服跪拜叩头鞠躬弯腰低头哈腰驼背弓背驮背罗锅鸡胸龟背龙钟老态衰朽腐烂糜烂溃烂溃疡创伤伤口伤疤疤痕记号标记标志旗帜旗子飘扬飞扬飞舞舞蹈跳舞翩跹起舞婆娑婀娜多姿多彩五彩缤纷绚丽灿烂辉煌壮观壮丽宏伟伟大崇高高尚品
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值