上面散仙在博客里,写了关于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环境变量
[code="shell"]
# echo $PATH
/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/java/jdk/bin:/root/bin
#
[/code]
确定里面没有ant和maven的环境变量,然后执行文件安装:
[code="java"]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完毕
安装完成,请重新登录客户端即可!
# [/code]
安装完毕后,可提示安装完成,然后我们退出在登陆客户端即可,查看是否安装成功,验证方式ant -version 和mvn -v
[code="shell"]maven解压完毕,开始安装.....
===============安装ant开始===============
=============安装ant完毕,开始安装maven=============
安装maven完毕
安装完成,请重新登录客户端即可!
# logout
Last login: Thu Sep 4 20:03:34 2014 from 192.168.46.24
# ant -version
Apache Ant(TM) version 1.9.4 compiled on April 29 2014
# 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"
# 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
#
[/code]
注意,脚本里的环境变量因为有特殊字符,均用单引号括起来
最后看下脚本的代码,后面会附上下载:
[code="shell"]# 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 已写入
[/code]
散仙的安装环境是在centos上,如果是其他的linux版本,如有命令不一样的,可以稍作修改即可。
条件要求:
1,JDK环境已经配置完毕,如果没有配置的,可以参考散仙的上篇文章
2,在root的根目录下ant的压缩包一个,脚本里需要修改对应的压缩包名
3,在root根目录下maven的压缩包一个,脚本里同样需要修改对应的压缩包名
4,本脚本的执行路径,默认是在root目录下,有需要可以自行修改
5,默认的解压存储路径,在/root/java下,有需要可以在脚本里自行修改
6,安装的环境变量存储在/etc/profile.d/java.sh里面,便于用户登录时加载环境变量
7,所有的变量路径都可以自己定制配置
8,安装完毕后重新退出登录下客户端即可
先看下默认的PATH环境变量
[code="shell"]
# echo $PATH
/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/java/jdk/bin:/root/bin
#
[/code]
确定里面没有ant和maven的环境变量,然后执行文件安装:
[code="java"]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完毕
安装完成,请重新登录客户端即可!
# [/code]
安装完毕后,可提示安装完成,然后我们退出在登陆客户端即可,查看是否安装成功,验证方式ant -version 和mvn -v
[code="shell"]maven解压完毕,开始安装.....
===============安装ant开始===============
=============安装ant完毕,开始安装maven=============
安装maven完毕
安装完成,请重新登录客户端即可!
# logout
Last login: Thu Sep 4 20:03:34 2014 from 192.168.46.24
# ant -version
Apache Ant(TM) version 1.9.4 compiled on April 29 2014
# 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"
# 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
#
[/code]
注意,脚本里的环境变量因为有特殊字符,均用单引号括起来
最后看下脚本的代码,后面会附上下载:
[code="shell"]# 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 已写入
[/code]
散仙的安装环境是在centos上,如果是其他的linux版本,如有命令不一样的,可以稍作修改即可。