当前位置: > CentOS > CentOS教程 >

CentOS自动安装Maven

时间:2017-02-28 11:25来源:linux.it.net.cn 作者:IT

1. 自动下载Maven

2. 设置环境变量

3. 配置mirror

安装:下载 maven.rar 按照 readme 执行即可

 

mirror配置:

 

  1. <mirror>  
  2.     <id>alimaven</id>  
  3.     <name>aliyun maven</name>  
  4.     <url>http://maven.aliyun.com/nexus/content/groups/public/</url>  
  5.     <mirrorOf>central</mirrorOf>  
  6. </mirror>  
  7. <mirror>  
  8.     <id>central</id>  
  9.     <name>Maven Repository Switchboard</name>  
  10.     <url>http://repo1.maven.org/maven2/</url>  
  11.     <mirrorOf>central</mirrorOf>  
  12. </mirror>  
  13. <mirror>  
  14.     <id>repo2</id>  
  15.     <mirrorOf>central</mirrorOf>  
  16.     <name>Human Readable Name for this Mirror.</name>  
  17.     <url>http://repo2.maven.org/maven2/</url>  
  18. </mirror>  
  19. <mirror>  
  20.     <id>ibiblio</id>  
  21.     <mirrorOf>central</mirrorOf>  
  22.     <name>Human Readable Name for this Mirror.</name>  
  23.     <url>http://mirrors.ibiblio.org/pub/mirrors/maven2/</url>  
  24. </mirror>  
  25. <mirror>  
  26.     <id>jboss-public-repository-group</id>  
  27.     <mirrorOf>central</mirrorOf>  
  28.     <name>JBoss Public Repository Group</name>  
  29.     <url>http://repository.jboss.org/nexus/content/groups/public</url>  
  30. </mirror>  
  31. <mirror>  
  32.     <id>maven.net.cn</id>  
  33.     <name>oneof the central mirrors in china</name>  
  34.     <url>http://maven.net.cn/content/groups/public/</url>  
  35.     <mirrorOf>central</mirrorOf>  
  36. </mirror>    
  37.     

############################# 结束符 ##########################

贴上shell 文件:

 

 
  1. #!/bin/sh  
  2.   
  3. #关闭进程  
  4. killpids(){  
  5.   pids=($(ps -ef | grep $1 | awk '{print $2}'))  
  6.   for pid in ${pids[@]}; do  
  7.     echo "关闭进程: pid ${pid}"  
  8.     kill -9 ${pid}  
  9.   done  
  10. }  
  11. killpids maven  
  12.   
  13. #删除旧版maven  
  14. echo "删除旧版maven"  
  15. rm -rf /usr/local/apache-maven-*  
  16.   
  17. #install maven  
  18. srcPath=$(find /usr/maven -maxdepth 1 -type f|grep '.*maven.*.tar.gz$')  
  19. if [[ $srcPath =~ "maven" ]]  
  20.   then  
  21.     echo "安装包:$srcPath"  
  22.     rpm -ivh $srcPath  
  23.   else  
  24.     #下载maven  
  25.     yum -y install wget  
  26.     echo -e "Download Maven"      
  27.     wget http://mirrors.tuna.tsinghua.edu.cn/apache/maven/maven-3/3.3.9/binaries/apache-maven-3.3.9-bin.tar.gz -P /usr/maven/  
  28.     srcPath=$(find /usr/maven -maxdepth 1 -type f|grep '.*maven.*.tar.gz$')  
  29. fi  
  30.   
  31. #解压  
  32. echo "解压..."  
  33. tar -xf $srcPath -C /usr/local  
  34.   
  35. path=$(find /usr/local -maxdepth 1 -type d|grep 'apache-maven-.*')  
  36. dir_name=${path##*/}  
  37. echo $path  
  38. echo $dir_name  
  39.   
  40. #赋予权限  
  41. chmod -R 755 $path  
  42.   
  43. #设置环境变量  
  44. sed -i '/M2_HOME/d' /etc/profile  
  45. echo "设置环境变量"  
  46. echo "export M2_HOME=$path" >> /etc/profile  
  47. echo 'export PATH=$PATH:$M2_HOME/bin' >> /etc/profile  
  48. source /etc/profile  
  49.   
  50. echo "建立软链接 $path -> apache-maven"  
  51. ln -s $path apache-maven  
  52.   
  53. echo "配置 mirrors"  
  54.   
  55. IFSBAK=$IFS     #备份原来的值  
  56. IFS=#  
  57. mirror="  
  58. #   <mirror>  
  59. #       <id>alimaven</id>  
  60. #       <name>aliyun maven</name>  
  61. #       <url>http://maven.aliyun.com/nexus/content/groups/public/</url>  
  62. #       <mirrorOf>central</mirrorOf>  
  63. #   </mirror>  
  64. #   <mirror>  
  65. #       <id>central</id>  
  66. #       <name>Maven Repository Switchboard</name>  
  67. #       <url>http://repo1.maven.org/maven2/</url>  
  68. #       <mirrorOf>central</mirrorOf>  
  69. #   </mirror>  
  70. #   <mirror>  
  71. #       <id>repo2</id>  
  72. #       <mirrorOf>central</mirrorOf>  
  73. #       <name>Human Readable Name for this Mirror.</name>  
  74. #       <url>http://repo2.maven.org/maven2/</url>  
  75. #   </mirror>  
  76. #   <mirror>  
  77. #       <id>ibiblio</id>  
  78. #       <mirrorOf>central</mirrorOf>  
  79. #       <name>Human Readable Name for this Mirror.</name>  
  80. #       <url>http://mirrors.ibiblio.org/pub/mirrors/maven2/</url>  
  81. #   </mirror>  
  82. #   <mirror>  
  83. #       <id>jboss-public-repository-group</id>  
  84. #       <mirrorOf>central</mirrorOf>  
  85. #       <name>JBoss Public Repository Group</name>  
  86. #       <url>http://repository.jboss.org/nexus/content/groups/public</url>  
  87. #   </mirror>  
  88. #   <mirror>  
  89. #       <id>maven.net.cn</id>  
  90. #       <name>oneof the central mirrors in china</name>  
  91. #       <url>http://maven.net.cn/content/groups/public/</url>  
  92. #       <mirrorOf>central</mirrorOf>  
  93. #   </mirror>    
  94. #                                                                       '  
  95. "  
  96.   
  97. #循环写入文件  
  98. for line in $mirror;  
  99. do  
  100.   sed -i "/<\/mirrors>/i\ $line" $path/conf/settings.xml  
  101. done  
  102. IFS=$IFSBAK     #还原  
  103.   
  104.   
  105. echo "mvn -v"  
  106. mvn -v  
  107. echo ""  
  108.   
  109.    



(责任编辑:IT)
------分隔线----------------------------
栏目列表
推荐内容