Linux环境下JDK/Eclipse一键安装脚本
--------------------------------------------------------------------
author:jiangxin
Email:jiangxinnju@163.com
Blog:http://blog.csdn.net/jiangxinnju
--------------------------------------------------------------------
如果大家必须在Linux环境下使用java开发应用程序,会感觉Linux下JDK和Eclipse等相关软件安装都很复杂,所以我特意写了一个脚本,这是一个在Linux下自动安装/卸载JDK和Eclipse的脚本,实现一键安装卸载,无任何额外文件产生。大家可以尝试一下。
文件包等下载地址:
http://pan.baidu.com/s/1sjArVM9
脚本能够自动识别系统是32位的还是64位的,并自动选择Jdk和Eclipse等版本。
测试环境:
Linux发行版本:Ubuntu 14.04
JDK版本:
jdk-7u60-linux-i586(32位)
jdk-7u60-linux-x64(64位)
Eclipse版本:
eclipse-java-luna-R-linux-gtk(32位)
eclipse-java-luna-R-linux-gtk-x86_64(64位)
使用时请确保此文件夹存在以下文件:
├── eclipse-java-luna-R-linux-gtk.tar.gz
├── eclipse-java-luna-R-linux-gtk-x86_64.tar.gz
├── install.sh
├── jdk-7u60-linux-i586.tar.gz
├── jdk-7u60-linux-x64.tar.gz
├── README
└── uninstall.sh
你可以尝试修改该脚本以实现更加适合自己等功能,欢迎大家提出修改意见。
部分Linux系统会自带OpenJava,可以在安装前看看java/javac等命令是否有效。
安装脚本:
#!/bin/bash
echo "正在创建/usr/lib/jvm/目录"
sudo mkdir /usr/lib/jvm/
echo "目录/usr/lib/jvm/创建成功"
echo "正在安装JDK和Eclipse"
os_version=`uname -a`
echo $os_version
architecture="64"
echo "$os_version" | grep -q "$architecture"
if [ $? -eq 0 ]
then
echo "您正在使用64位操作系统,为您选择64位JDK和eclipse"
sudo tar -zxvf jdk-7u60-linux-x64.tar.gz -C /usr/lib/jvm/
sudo chown -R jiangxin:jiangxin /usr/lib/jvm/jdk1.7.0_60
sudo tar -zxvf eclipse-java-luna-R-linux-gtk-x86_64.tar.gz -C /usr/bin/
sudo chown -R jiangxin:jiangxin /usr/bin/eclipse
sudo ln -s /usr/bin/eclipse/eclipse ~/Desktop/eclipse
else
echo "您正在使用32位操作系统,为您选择32位JDK和eclipse"
sudo tar -zxvf jdk-7u60-linux-i586.tar.gz -C /usr/lib/jvm/
sudo chown -R jiangxin:jiangxin /usr/lib/jvm/jdk1.7.0_60
sudo tar -zxvf eclipse-java-luna-R-linux-gtk.tar.gz -C /usr/bin/
sudo chown -R jiangxin:jiangxin /usr/bin/eclipse
sudo ln -s /usr/bin/eclipse/eclipse ~/Desktop/eclipse
fi
echo "安装JDK和Eclipse成功"
echo "配置环境变量"
# touch environment
# echo "PATH="$PATH:/usr/lib/jvm/jdk1.7.0_60/bin"" >> environment
# echo "JAVA_HOME=/usr/lib/jvm/jdk1.7.0_60" >> environment
# echo "CLASSPATH=.:%JAVA_HOME%/lib/dt.jar:%JAVA_HOME%/lib/tools.jar" >> environment
# sudo mv /etc/environment /etc/environment.backup.java
# sudo mv environment /etc
# source /etc/environment
mv ~/.bashrc ~/.bashrc.backup.java
cat ~/.bashrc.backup.java >> ~/.bashrc
echo "PATH="$PATH:/usr/lib/jvm/jdk1.7.0_60/bin"" >> ~/.bashrc
echo "JAVA_HOME=/usr/lib/jvm/jdk1.7.0_60" >> ~/.bashrc
echo "CLASSPATH=.:%JAVA_HOME%/lib/dt.jar:%JAVA_HOME%/lib/tools.jar" >> ~/.bashrc
source ~/.bashrc
echo "配置环境成功"
# 如果有多个java版本需要进行以下配置(包括openjdk)
echo "设置默认jdk"
sudo update-alternatives --install /usr/bin/java java /usr/lib/jvm/jdk1.7.0_60/bin/java 300
sudo update-alternatives --install /usr/bin/javac javac /usr/lib/jvm/jdk1.7.0_60/bin/javac 300
sudo update-alternatives --config java
# echo "设置默认jdk成功"
echo "测试是否安装成功"
java -version
echo "安装成功"
卸载脚本:
echo "正在删除相关文件"
sudo rm -rf /usr/lib/jvm/
sudo rm -rf /usr/bin/eclipse/
sudo rm -rf ~/Desktop/eclipse
wait
echo "删除相关文件成功"
echo "恢复配置文件"
# sudo rm -f /etc/environment
# sudo mv /etc/environment.backup.java /etc/environment
sudo rm /usr/bin/java /usr/bin/javac
sudo rm /etc/alternatives/java /etc/alternatives/javac
mv ~/.bashrc.backup.java ~/.bashrc
echo "恢复配置文件成功"
- TensorFlow-3: 用 feed-forward neural network 识别数字
- TensorFlow-4: tf.contrib.learn 快速入门
- TensorFlow-5: 用 tf.contrib.learn 来构建输入函数
- 前后端分离之vue2.0+webpack2 实战项目 -- html模板拼接
- 抛弃vue-resource拥抱axios
- TensorFlow-6-TensorBoard 可视化学习
- TensorFlow-7-TensorBoard Embedding可视化
- windows下nginx的安装及使用方法入门
- Scala Turtuial-容器(集合)类型
- Scala Turtuial-基本语法
- C++ Virtual And Pure Virtual Explained
- 搭建分布式Spark计算平台
- 像tomcat容器那样自定义一个 Classloader
- react+redux+webpack教程5
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- 设计之禅——中介者模式
- 设计之禅——备忘录模式
- 设计之禅——访问者模式
- 在scite编辑器中使用astyle格式化c代码
- 简单的51单片机多任务操作系统(C51)
- 使用KEIL C51实现的简单合作式多任务操作系统内核
- Zookeeper——分布式一致性协议及Zookeeper Leader选举原理
- 使用KEIL C51实现的简单合作式多任务操作系统内核(单片机实现版本)
- Zookeeper——基本使用以及应用场景(手写实现分布式锁和rpc框架)
- 函数指针数组指针+结构体数组
- Zookeeper——Watcher原理详解
- 51多任务系统,可以运行
- notepad++中设置python运行
- Dubbo——SPI及自适应扩展原理
- Dubbo——服务发布原理