`
qindongliang1922
  • 浏览: 2184713 次
  • 性别: Icon_minigender_1
  • 来自: 北京
博客专栏
7265517b-f87e-3137-b62c-5c6e30e26109
证道Lucene4
浏览量:117556
097be4a0-491e-39c0-89ff-3456fadf8262
证道Hadoop
浏览量:125937
41c37529-f6d8-32e4-8563-3b42b2712a50
证道shell编程
浏览量:59942
43832365-bc15-3f5d-b3cd-c9161722a70c
ELK修真
浏览量:71310
社区版块
存档分类
最新评论

shell脚本一键安装Ant和Maven

阅读更多
上面散仙在博客里,写了关于JDK的一键安装的shell脚本,本篇呢,散仙再来看看如何利用shell脚本一键安装ant和maven,为什么需要ant和maven呢? 对于广大的java程序员来说,ant和maven几乎是必须的工具,很多项目的构建,发布都要用到,所以写个脚本来安装他们是非常方便的。

条件要求:

1,JDK环境已经配置完毕,如果没有配置的,可以参考散仙的上篇文章
2,在root的根目录下ant的压缩包一个,脚本里需要修改对应的压缩包名
3,在root根目录下maven的压缩包一个,脚本里同样需要修改对应的压缩包名
4,本脚本的执行路径,默认是在root目录下,有需要可以自行修改
5,默认的解压存储路径,在/root/java下,有需要可以在脚本里自行修改
6,安装的环境变量存储在/etc/profile.d/java.sh里面,便于用户登录时加载环境变量
7,所有的变量路径都可以自己定制配置
8,安装完毕后重新退出登录下客户端即可



先看下默认的PATH环境变量
[root@ganglia ~]# echo $PATH
/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/java/jdk/bin:/root/bin
[root@ganglia ~]# 


确定里面没有ant和maven的环境变量,然后执行文件安装:
maven/lib/aether-connector-wagon.license
maven/lib/plexus-cipher-1.7.jar
maven/lib/plexus-interpolation-1.19.jar
maven/lib/slf4j-api-1.7.5.jar
maven/lib/cdi-api-1.0.jar
maven/lib/jsoup-1.7.2.jar
maven/lib/wagon-file-2.6.jar
maven/lib/maven-settings-3.2.1.jar
maven/lib/aether-spi-0.9.0.M2.jar
maven/lib/wagon-provider-api-2.6.jar
maven/lib/org.eclipse.sisu.inject-0.0.0.M5.jar
maven/lib/aether-spi.license
maven/lib/aether-impl-0.9.0.M2.jar
maven/lib/maven-settings-builder-3.2.1.jar
maven/lib/maven-aether-provider-3.2.1.jar
maven/lib/plexus-component-annotations-1.5.5.jar
maven/lib/jsr250-api-1.0.jar
maven/lib/aopalliance-1.0.jar
maven/lib/commons-io-2.2.jar
maven/lib/slf4j-simple-1.7.5.jar
maven/lib/org.eclipse.sisu.inject.license
maven/lib/sisu-guice-3.1.3-no_aop.jar
maven/lib/javax.inject-1.jar
maven/lib/wagon-http-shared-2.6.jar
maven/lib/jsoup.license
maven/lib/ext/
maven/lib/ext/README.txt
maven/lib/maven-repository-metadata-3.2.1.jar
maven/lib/maven-artifact-3.2.1.jar
maven/lib/plexus-utils-3.0.17.jar
maven/lib/aether-connector-wagon-0.9.0.M2.jar
maven/lib/maven-model-builder-3.2.1.jar
maven/lib/maven-model-3.2.1.jar
maven/lib/jsr250-api.license
maven/lib/slf4j-api.license
maven解压完毕,开始安装.....
===============安装ant开始===============
=============安装ant完毕,开始安装maven=============
安装maven完毕
安装完成,请重新登录客户端即可!
[root@ganglia ~]# 


安装完毕后,可提示安装完成,然后我们退出在登陆客户端即可,查看是否安装成功,验证方式ant -version 和mvn -v
maven解压完毕,开始安装.....
===============安装ant开始===============
=============安装ant完毕,开始安装maven=============
安装maven完毕
安装完成,请重新登录客户端即可!
[root@ganglia ~]# logout

Last login: Thu Sep  4 20:03:34 2014 from 192.168.46.24
[root@ganglia ~]# ant -version
Apache Ant(TM) version 1.9.4 compiled on April 29 2014
[root@ganglia ~]# mvn -v
Apache Maven 3.2.1 (ea8b2b07643dbb1b84b6d16e1f08391b666bc1e9; 2014-02-15T01:37:52+08:00)
Maven home: /root/java/maven
Java version: 1.7.0_25, vendor: Oracle Corporation
Java home: /root/java/jdk/jre
Default locale: zh_CN, platform encoding: UTF-8
OS name: "linux", version: "2.6.32-431.el6.x86_64", arch: "amd64", family: "unix"
[root@ganglia ~]# echo $PATH
/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/java/jdk/bin:/root/java/ant/bin:/root/java/maven/bin:/root/bin
[root@ganglia ~]# 


注意,脚本里的环境变量因为有特殊字符,均用单引号括起来

最后看下脚本的代码,后面会附上下载:
[root@ganglia ~]# vi mainstall.sh 
#移除ant和maven
yum remove -y  ant*
yum remove -y  maven*

basepath="/root/java/"
mavenpath="/root/java/maven"
antpath="/root/java/ant"

if [  -e $mavenpath  ] ; then
rm -rf $mavenpath
echo "存在maven,移除完毕"
fi


if [  -e $antpath  ] ; then
rm -rf $antpath
echo "存在ant,移除完毕"
fi


echo  "解压ant到/root/java/下"
sleep 2
#解压ant到指定文件夹下
tar -zxvf ant.tar.gz -C $basepath

echo "解压ant完毕,开始解压maven"

sleep 2

#解压maven到指定文件夹下
tar -zxvf maven.tar.gz -C $basepath

echo "maven解压完毕,开始安装....."

sleep 2

echo "===============安装ant开始==============="

cd /etc/profile.d/

echo "" >> java.sh
echo 'export ANT_HOME='$antpath >> java.sh
echo 'export CLASSPATH=$CLASSPATH:$ANT_HOME/lib' >> java.sh
echo 'export PATH=$PATH:$ANT_HOME/bin'  >> java.sh
echo "=============安装ant完毕,开始安装maven============="

sleep 2


echo "" >> java.sh
echo 'export MAVEN_HOME='$mavenpath >> java.sh
echo 'export CLASSPATH=$CLASSPATH:$MAVEN_HOME/lib' >> java.sh
echo 'export PATH=$PATH:$MAVEN_HOME/bin'  >> java.sh


"mainstall.sh" 81L, 1251C 已写入



散仙的安装环境是在centos上,如果是其他的linux版本,如有命令不一样的,可以稍作修改即可。
1
2
分享到:
评论

相关推荐

    shell ant Ant入门与进阶

    在实际项目中,Shell脚本常被用来做项目环境的初始化,如设置环境变量,安装依赖等,而Ant则负责具体的构建过程。两者结合使用,可以构建出一套完整且高效的自动化构建流程。 总结一下,Shell脚本和Apache Ant在IT...

    maven 一键打包

    为了实现一键打包,通常我们会编写一个shell脚本或者Ant任务,该脚本会调用Maven的相关命令。例如,可以使用以下命令进行打包: ```bash mvn clean install ``` 这条命令首先清理已有的构建结果,然后执行编译、测试...

    autoinstallhadoop:自动安装JDK,Maven,Ant,Maven,Hadoop脚本

    自动安装JDK,Maven,Ant,Maven,Hadoop脚本 脚本开发者:三劫散仙 技术交流群:376932160 本脚本的主要作用: 给hadoop的快速大规模的集群分发安装提供了准备,能够很快的完成部分基础设施工作, 在这上面我们可以直接...

    ant开发指南用于说明ant一些相关信息

    5. **集成外部工具**:Ant支持调用系统级别的命令,如`exec`任务可用于执行shell脚本或外部程序,极大地扩展了构建脚本的功能。 四、Ant高级特性 1. **条件语句和循环**:通过`if`、`unless`属性,可以在构建脚本...

    jenkins+svn+maven构建

    Jenkins的execute shell插件可以连接远程主机,执行shell脚本,实现代码回滚。 Jenkins安装部署 Jenkins的安装部署包括以下几个步骤: 1. 下载Jenkins安装包。 2. 安装Jenkins。 3. 配置Jenkins环境变量。 4. ...

    webSphere自动配置的脚本

    这种脚本通常会涉及WAS的安装、服务器启动和停止、应用部署、环境变量设置等环节。 【标签】"源码"意味着可能涉及到了脚本的具体代码,可能是使用Shell、Python、Perl或其他脚本语言编写的,用于与WebSphere的管理...

    基于Python和Shell语言的构建工具集设计源码

    该工具集包含61个文件,其中Markdown文件22个,XML文件6个,YAML文件5个,配置文件5个,批处理文件2个,...该项目涵盖了Maven、Gradle、Ant、NPM等多种构建工具的相关配置和脚本,适用于多样化的软件开发需求。

    ant安装配置及教程、android打包工具

    2. 调用外部脚本:Ant支持在构建过程中调用shell脚本或批处理文件,增强其灵活性。 3. 依赖管理:通过标签,Ant可以与其他构建系统(如Maven)配合,管理项目依赖。 总结,Apache Ant是一个强大的构建工具,尤其在...

    ant 工程

    9. **Shell脚本**:在Ant中,可以通过`exec`任务执行shell脚本,使得在构建过程中能够执行操作系统级别的命令。这在文件操作、系统调用或者执行第三方工具时非常有用。 10. **Ant与版本控制**:如何配置Ant与Git、...

    ant工具的使用

    此外,Ant支持多种第三方库和插件,如Ivy用于依赖管理,Maven插件用于与Maven仓库交互,以及JUnit插件进行自动化测试等。这些丰富的生态系统进一步增强了Ant的功能,使其成为Java项目构建的首选工具之一。 总的来说...

    ant简介

    9. **脚本执行**:执行外部的shell脚本或批处理文件。 **三、Ant的XML配置文件** Ant的配置文件通常命名为`build.xml`,其中定义了任务和它们的依赖关系。每个任务(Target)由一系列的属性和子任务(Task)组成。...

    简介Java程序的Shell脚本包装

    总的来说,Java Shell脚本包装是一种实用的技术,它简化了复杂Java应用的执行过程,提高了可维护性和灵活性。通过编写和利用`run-java`这样的通用脚本,开发者可以避免重复的配置工作,更专注于代码本身的开发。对于...

    Apache Ant操作手册

    Apache Ant 是一个强大的构建工具,主要用Java语言编写,它为软件开发过程提供了一种自动化构建的解决方案。...Ant还与其他Java开发工具(如Maven、Gradle)相结合,进一步提升了项目管理和构建的效率。

    ant下使用ssh或者scp所需要的包

    在这个场景下,`jscp`和`j2ssh`是两个关键的Java库,它们提供了与SSH和SCP交互的API,使得开发者能够在Ant脚本中执行远程操作。 `jscp`(Java Secure Channel Protocol)是一个Java实现的SSH客户端库,它允许Java...

    ant-sshtunnel.jar.zip

    SSH(Secure Shell)是一种网络协议,用于安全地远程访问和控制系统,而SSH隧道则允许用户通过SSH连接转发本地端口到远程服务器的端口,从而实现数据的安全传输。在Ant中,sshtunnel组件允许开发者在构建脚本中创建...

    Ant使用指南

    Ant可以调用外部脚本,如Java、Perl或Shell脚本,通过`<script>`或`<exec>`任务实现。 ### 8. 构建生命周期 Ant没有预定义的构建生命周期,但可以通过设置目标间的依赖来模拟,比如`clean -> compile -> test -> ...

    ant构建工具

    尽管现代的构建工具如Maven和Gradle在某些方面可能更具优势,但Ant仍然因其简单性和灵活性在许多项目中占据一席之地。 在Ant-master压缩包中,很可能包含了Ant项目的源码,包括其核心实现、任务定义和相关的文档。...

Global site tag (gtag.js) - Google Analytics