linux ubuntu安装jdk
Oracle has two products that implement Java Platform Standard Edition(Java SE)7:Java SE
Development Kit(JDK)7 and Java SE Runtime Environment(JRE)7.
JDK 7 is a superset of JRE 7,and contains everything that is in JRE 7,plus tools such as
the compilers and debuggers necessary for developing applets and applications.JRE 7
provides the libraries,the Java Virtual Machine(JVM),and other components to run applets
and applications written in the java programming language.
总结一下子,就是Java平台分为三个,java se标准平台。java ee企业平台。java me移动平台。。
Oracle甲骨文公司提供了两个工具来实现java se平台。分别是JDK 7 和JRE 7。 一台机子,要想运行Java程序,只需要有JRE (即java runtime environment,Java运行环境)就可以了。但是,如果要进行开发,就得用JDK啦。因为,JDK 是不仅包含了JRE所有的东西。而且,还包含了开发工具,调试工具等等。。。那么,具体内容就是等看下面那个图表了。非常详细的描述了JDK与JRE的结构性质上的差别与联系
Description of Java Conceptual Diagram http://docs.oracle.com/javase/8/docs/index.html
1.下载连接http://java.sun.com/javase/downloads/index.jsp。我下载的是:
linux x86 jdk-7u25-linux-i586.tar.gz
2.在/usr/lib新建一个文件家java,然后把jdk 压缩包解压到这里。
ms@ubuntums:/usr/lib$ mkdir java
mkdir: 无法创建目录"java": 权限不够
ms@ubuntums:/usr/lib$ sudo mkdir java
[sudo] password for ms:
就可以创建java目录了。
ms@ubuntums:~/下载$ sudo tar -xvf jdk-7u25-linux-i586.tar -C /usr/lib/java
要加sudo。-C 解压到指定目录。
通过源代码安装比较麻烦:参考:
http://askubuntu.com/questions/55848/how-do-i-install-oracle-java-jdk-7
http://shinephp.com/install-jdk-7-on-ubuntu/
http://blog.csdn.net/yang_hui1986527/article/details/6677450
通过rpm包安装
官网上面只有rpm包下载。
ms@ubuntums:~/下载$ sudo alien --scripts jdk-7u25-linux-i586.rpm
jdk_1.7.025-1_i386.deb generated
ok,现在生成了一个deb的包。
再用dpkg安装deb包(不能用apt-get)
sudo dpkg -i package.deb
就可以安装了。
通过bin安装,现在jdk7官方没有提供bin,但是jdk6有bin。
http://www.oracle.com/technetwork/java/javase/downloads/jdk6u37-downloads-1859587.html
下载bin后:
改文件权限为可执行[chmod u+x jdk-6u14-linux-i586.bin]
或者[chmod 701 jdk-6u14-linux-i586.bin]
◆解压文件 [sudo ./jdk-6u14-linux-i586.bin],yes/no选择yes,执行完之后边可
以在develop目录下面看到文件夹jdk1.6.0_14
然后把它移动到usr/lib下:
s@ubuntums:~/下载$ sudo mv jdk1.6.0_37 /usr/lib/java
此时,jdk已安装完毕,下面进行配置
执行
在environment中修改,出现如下部分
PATH="......:/usr/lib/jvm/java/jdk1.6.0_12/bin"
CLASSPATH=.:/usr/lib/jvm/java/jdk1.6.0_12/lib
JAVA_HOME=/usr/lib/jvm/java/jdk1.6.0_12
执行
root@ubuntums:~/下载# source ~/.bashrc
此时,环境变量设置成功(设置环境变量的方法很多,不一一列举)
由于ubuntu中可能会有默认的jdk,如openjdk,所以,为了使默认使用的是我们安装的jdk,还要进行如下工作。
执行
sudo update-alternatives --install /usr/bin/java java /usr/lib/java/jdk1.6.0_37/bin/java 300 sudo update-alternatives --install /usr/bin/javac javac /usr/lib/java/jdk1.6.0_37/bin/javac 300
执行结果:
root@ubuntums:~/下载# sudo update-alternatives --install /usr/bin/java java /usr/lib/java/jdk1.6.0_37/bin/java 300
update-alternatives: 使用 /usr/lib/java/jdk1.6.0_37/bin/java 来提供 /usr/bin/java (java),于 自动模式 中。
root@ubuntums:~/下载# sudo update-alternatives --install /usr/bin/javac javac /usr/lib/java/jdk1.6.0_37/bin/javac 300
update-alternatives: 使用 /usr/lib/java/jdk1.6.0_37/bin/javac 来提供 /usr/bin/javac (javac),于 自动模式 中。
成功执行命令后(其中300 是alternative的权重值,新更改的权重值需要大于当前的,通过update-alternatives --display java 可以查看),我们安装的JDK就是系统默认的了,执行命令 $ java -version 就可以成功看到 JDK的相关信息了如:
如果默认还是openjdk的,我们把权重值300增加直到最高位置。
root@ubuntums:~/下载# update-alternatives --display java
java - 自动模式
链接目前指向 /usr/lib/java/jdk1.6.0_37/bin/java
/usr/lib/java/jdk1.6.0_37/bin/java - 优先级 300
目前“最佳”的版本为 /usr/lib/java/jdk1.6.0_37/bin/java。
root@ubuntums:~/下载# java -version
java version "1.6.0_37"
Java(TM) SE Runtime Environment (build 1.6.0_37-b06)
Java HotSpot(TM) Server VM (build 20.12-b01, mixed mode)
测试:
public class Hello
{
public static void main(String[] args)
{
System.out.println("hello java");
}
}
root@ubuntums:~/下载# javac Hello.java
root@ubuntums:~/下载# java Hello
hello java
参考:http://persevere.iteye.com/blog/664394
http://blog.missyi.com/page_520.html
http://forum.ubuntu.org.cn/viewtopic.php?t=183803
http://www.cnblogs.com/gaizai/archive/2012/06/12/2545886.html
-----------------------------------------------
登录oracle的网站去下载JDK7
http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html
下载rpm。
我在/usr/java下安装jdk。下载的是rpm,通过dpgk安装。
修改配置文件
打开配置文件命令
root@fnngj-H24X: sudo gedit /etc/environment
配置内容如下:

PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:$JAVA_HOME/bin" export CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib export JAVA_HOME=/usr/java/java-7-sun

(标红的部分为我们要添加的内容,注意路径,安装版本名称不要写错)
保存后关闭配置文件
要使配置文件生效,需要输入一下:
root@fnngj-H24X:/usr/java# source /etc/environment
验证
在终端使用echo命令检查环境变量的设置情况

root@fnngj-H24X:/usr/java# echo $JAVA_HOME
/usr/java/java-7-sun root@fnngj-H24X:/usr/java# echo $CLASSPATH
.:/usr/java/java-7-sun/lib:/usr/java/java-7-sun/jre/lib root@fnngj-H24X:/usr/java# echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/usr/java/java-7-sun/bin

查看安装的java版本:
root@fnngj-H24X:/usr/java# java -version
java version "1.7.0_11"
Java(TM) SE Runtime Environment (build 1.7.0_11-b21)
Java HotSpot(TM) Server VM (build 23.6-b04, mixed mode)
使其对所有用户有效
重新打开一个终端,查看java版本

fnngj@fnngj-H24X:~$ java -version
程序 'java' 已包含在下列软件包中:
* default-jre
* gcj-4.6-jre-headless
* gcj-4.7-jre-headless
* openjdk-7-jre-headless
* openjdk-6-jre-headless
请尝试:sudo apt-get install <选定的软件包>

啊!怎么找不到了呢? 因为刚才是用root用户配置的,且关闭终端,配置的作用就消失了。那怎么办?
需要修改profile 文件
root@fnngj-h24x/usr/java# sudo gedit /etc/profile
打开profile文件,添加如下内容

#set java environment JAVA_HOME=/usr/java/java-7-sun
export JRE_HOME=/usr/java/java-7-sun/jre
export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH

修改完成后保存
这个需要重启电脑才能生效。、
参考:http://www.cnblogs.com/fnng/archive/2013/01/30/2883815.html
jdk导入第三方jar包:
CLASSPATH:也指定一个路径列表,是用于搜索 Java 编译或者运行时需要用到的类。在 CLASSPATH 列表中除了可以包含路径外,还可以包含 .jar 文件。Java 查找类时会把这个 .jar 文件当作一个目录来进行查找。通常,我们需要把 JDK 安装路径下的 jre\lib\rt.jar (Linux: jre/lib/rt.jar) 包含在 CLASSPATH 中。
看http://www.cnblogs.com/youxin/p/3966170.html jdbc的例子。
编辑/etc/environment,增加classpath 变量:
增加::$JAVA_HOME/jre/lib/ext/mysql-connector-java-5.1.33-bin.jar
这个方法原因看:http://bbs.csdn.net/topics/10038471
然后source /etc/environment.
然后javac,java。
ok。成功,测试通过。
(找到jar包:
三种方法(选一):
1.在系统中设置classpath(环境变量)
2.在执行java程序时,加classpath参数。
3.将mail.jar解包,放在jre\lib\ext\下。
原因:
mail.jar是打包的,对java来说,包就相当于一个文件夹(文件夹名称就是.jar的文件名),文件夹下面才是类。
如果将打包的类放在classpath中,其实相当于在classpath中又建了一个叫mail文件夹,导致无法找到类。方法三其实就是让java可以在classpath直接找到类。
)
设置jdk环境变量时lib中的rt.jar ,dt.jar ,tool.jar是什么,作用是什么
这JDK的配置CLASSPATH中的dt.jar和tools.jar这两个文件到底是干什么的,有人说这个dt.jar是关于swing的 打开这个包确实可以看到和swing有关的类,说是如果用到swing就要配置这classpath,但是rt.jar中的swing呢 这个不才是真正的包含swing类库吗? 还有就是这两个包到底是用作开发的类库,还是JDK中的JAVAC等程序运行要的类库。 如果不路径这两个包对我们开发的程序中有什么影响?
———————————————————————————————
答:dt.jar和tools.jar是两个java最基本的包,里面包含了从java最重要的lang包到各种高级功能如可视化的swing包,是java必不可少的。
而path下面的bin里面都是java的可执行的编译器及其工具,如java,javadoc等,你在任意的文件夹下面运行cmd键入javac,系统就能自动召见java的编译器就是归功于这个环境变量的设置
rt.jar是JAVA基础类库,dt.jar是关于运行环境的类库,tools.jar是工具类库
设置在classpath里是为了让你 import *
———————————————————————————————
web系统都用到tool.jar
你用winrar看看里面是什么内容啦
---------------------------------------------------------------
1.
rt.jar 默认就在 根classloader的加载路径里面 放在claspath是多此一举
不信你可以去掉classpath里面的rt.jar
然后用 java -verbose XXXX 的方式运行一个简单的类 就知道 JVM的系统根Loader的路径里面
不光rt.jar jre/lib下面的大部分jar 都在这个路径里
2.
tools.jar 是系统用来编译一个类的时候用到的 也就是javac的时候用到
javac XXX.java
实际上就是运行
java -Calsspath=%JAVA_HOME%/lib/tools.jar xx.xxx.Main XXX.java
javac就是对上面命令的封装 所以tools.jar 也不用加到classpath里面
3.
dt.jar是关于运行环境的类库,主要是swing的包 你要用到swing时最好加上
dt.jar好像是swing的一些什么类,Eclipse开发环境默认的JRE也没有包括它。应该没用。
tools.jar应用服务器用来编译JSP文件,应用服务器自己会加载,不需要自己设置。
关于path和classpath的含义:
1.path变量的含义就是系统在任何路径下都可以识别java,javac命令
2.classpath变量的含义是告诉jvm要使用或执行的class放在什么路径上,便于JVM加载class文件,.;表示当前路径,tools.jar和dt.jar为类库路径。如果不用Swing里面的东西,可以不加dt.jar。 tools.jar里面是最基本的工具类,比如javac,不加是无法做开发的。
编译和运行需要的都是toos.jar里面的类 , 分别是
sun.tools.java.*;
sun.tools.javac.*;
linux ubuntu安装jdk的更多相关文章
- linux ubuntu 安装jdk
junluobj@junluobj:~$sudo mkdir /usr/lib/jvmwww.linuxidc.com@linuxidc:~$tar zvxf jdk-8u20-linux-x64.t ...
- Linux 下 安装jdk 1.7
Linux 下 安装jdk 1.7 参考百度经验 http://jingyan.baidu.com/album/ce09321b7c111f2bff858fea.html?picindex=6 第一步 ...
- Linux 下安装 jdk压缩包
按 esc 退出 记得 输入 :q 记得 : Linux下安装jdk 把压缩文件放在 桌面的soft 下 在usr目录下新建文件夹Java,把文件复制到 usr/java 更改下路径! 3 ...
- Ubuntu 安装JDK并配置成为默认的JDK
Ubuntu安装JDK 系统版本:Ubuntu 15.04 x64 JDK版本:jdk-8u60-linux-x64 1.查看系统位数,输入以下命令即可 getconf LONG_BIT 2.下载对应 ...
- Ubuntu 安装 JDK 7 / JDK8 的两种方式
ubuntu 安装jdk 的两种方式: 1:通过ppa(源) 方式安装. 2:通过官网下载安装包安装. 这里推荐第1种,因为可以通过 apt-get upgrade 方式方便获得jdk的升级 使用pp ...
- linux 下安装jdk及配置jdk环境图解
linux 下安装jdk及配置jdk环境图解 一:先检測是否已安装了JDK 运行命令: # rpm -qa|grep jdk 或 # rpm -q jdk 或 #find / -name j ...
- Ubuntu安装JDK与环境变量配置
Ubuntu安装JDK与环境变量配置 一.getconf LONG_BIT 查看系统位数,并下载相应的jdk.我的系统是32位的,所以下载的jdk是:jdk-8u77-linux-i586.gz.并且 ...
- Linux自动安装JDK的shell脚本
Linux自动安装JDK的shell脚本 A:本脚本运行的机器,Linux B:待安装JDK的机器, Linux 首先在脚本运行的机器A上确定可以ssh无密码登录到待安装jdk的机器B上,然后就可以在 ...
- Linux下安装JDK,Tomcat,Mysql详细教程
1. 概述 今天教大家在linux下安装jdk,mysql以及tomcat.在javaweb开发中,最后完成的项目代码,一般都是布在linux服务器下的.因为linux服务器可以说是安全性稳定性都比w ...
随机推荐
- 8,SSO,,eager copy,COW
针对字符串不同的长度,“编译器”选择不同的优化策略:SSO, eager copy,COW,分别针对短字符串,中等长度字符串,长字符串.不过,现在(2016)的大多数编译器(gcc 4.9.1,vs2 ...
- RFID电子标签制造封装工艺和可靠性研究
一.目的和意义 电子标签已经成为RFID工业的主要焦点 实现低成本.大批量.高可靠性地制造电子标签是推广RFID产品应用的关键技术之一 针对RFID标签制造中核心的封装工艺开展研究,以各向异性导 ...
- Spring Boot普通类调用bean
1 在Spring Boot可以扫描的包下 假设我们编写的工具类为SpringUtil. 如果我们编写的SpringUtil在Spring Boot可以扫描的包下或者使用@ComponentScan引 ...
- WebKit学习要点
<体系结构详解> 1. 浏览器功能结构 2. 浏览器结构 3. Webkit体系结构 4. WebKit目录结构 5. WebKit编译 <HTML引擎详解> 1. HTML语 ...
- 第一讲 一个简单的Qt程序分析
本文概要:通过一个简单的Qt程序来介绍Qt程序编写的基本框架与一些Qt程序中常见的概念 #include <QApplication> #include <QPushButton&g ...
- Android Blur效果之FastBlur
Blur 自从iOS系统引入了Blur效果,也就是所谓的毛玻璃.模糊化效果,磨砂效果,各大系统就開始竞相模仿,这是一个怎样的效果呢,我们现来看一些图: 这些就是典型的Blur效果,在iOS和MIUI中 ...
- 正则RegEXp
JavaScript RegExp 对象 RegExp 对象 RegExp 对象表示正则表达式,它是对字符串执行模式匹配的强大工具. 直接量语法 /pattern/attributes 创建 RegE ...
- Angular JS 学习笔记(一)
1. 菜鸟教程:http://www.runoob.com/angularjs/angularjs-tutorial.html 2. Angular JS中文网:http://www.apjs.net ...
- innerhtml和innertext的用法以及区别
例如: <div id="test"> <span style="color:red">test1</span> test2 ...
- HttpContext的解释意义
在.ashx中,我们HttpContext这个词,到底是什么意思?下面给大家说说 HttpContext 类:封装有关个别 HTTP 请求的所有 HTTP 特定的信息. 在处理请求执行链的各个阶段中, ...