文档章节

Windows下安装JDK

j
 javado
发布于 2017/08/30 20:13
字数 1361
阅读 9
收藏 0
点赞 0
评论 0
JDK

Java Development Kit (JDK): Java 语言的软件开发工具包,开发Java程序最基本的工具包.
下载安装JDK
下载页面http://www.oracle.com/technetwork/java/javase/downloads/index.html
注意:JDK和java EE sdk是不一样的,不要混淆。
JDK安装目录(路径用户自决定):D:\Program Files\Java\jdk1.x.x
JDK的环境变量的设置只需要两个环境变量:一个是(Windows操作系统环境变量)Path,另一个是:classpath

为什么要设置这两个环境变量?
JAVA程序要最终执行, 除了写代码外, 需要经过编译和执行两个步骤.编译和执行分别对应JDK中提供的javac.exe和java.exe两个命令(可在Dos命令行下运行).
设置Path变量是为了让操作系统找到指定的Java工具程序(以Windows来说就是找到javac.exe和java.exe等命令文件).
所以如果不想在DOS下手工运行Java或Javac,可以不设置Path环境变量。或者如果没有设置path环境变量,就需要每次都输入java.exe全路径名来执行它(类似D:\Program Files\Java\jdk1.x.x\java ...)。

javac的作用是将程序员写的Java代码(.java)文件编译成字节码(.class)文件。这个.class文件再由java.exe命令执行.
在DOS下输入java -version回车,如果显示JDK的版本信息则Path变量设置成功。

 
为什么要配置classpath变量?
配置classpath变量,才能使得java解释器知道到哪里去找需要的类文件(包括要执行的类, 引用的标准类库和用户自定义类).标准类库是别人已经写好了的,我们只管使用。比如我们常用到java.lang包中的类,在配置classpath变量后被设为默认导入,所以在写程序时就不用import这个包了。那么这些标准类库在哪呢?在以JDK的lib目录下以jar为后缀的文件中:一个是dt.jar,一个是tools.jar,这两个jar包都位于%JAVA_HOME%/jdk1.x.x/lib目录下(%JAVA_HOME%代表java安装目录),所以通常我们会把这两个jar包加到我们的classpath环境变量的值为:.; C:\Program Files\Java\jdk1.x.x\lib\tools.jar; C:\Program Files\Java\jdk1.x.x\lib\dt.jar;(注意,CLASSPATH最前面是有个 “.”的,表示当前目录。

 (jar文件是zip压缩格式,其中包括若干.class文件),每一路径中间必须以;作为分隔。 事实上JDK 5.0以后默认就会到当前工作目录(上面的.设置),以及JDK的lib目录(这里假设是C:\Program Files\Java\jdk1.x.x\lib)中寻找Java程序。所以如果Java程序是在这两个目录中,则不必设置Classpath变量也可以找得到.

如果不设置 classpath环境变量,又不想在命令行切换到类所在的目录, 则需要用到java命令的-classpath参数.例:
java -classpath F:\sendip\bin;F:\sendip\lib\java_mail.jar com.wzr.SendIp

F:\sendip\bin为执行类所在目录;
F:\sendip\lib\java_mail.jar为引用包所在目录;
com.wzr为执行类所在的包名, SendIp为(包含main函数的)类名.

*****
 如果有2个jar中间还可以用分号(;)分隔,如果有10个jar呢,都写上太麻烦了。这时可以使用java的D参数用-Djava.ext.dirs=路径这种方式来解决
 和上例类似,事先把第三方类库都放到lib下
 java -classpath F:\sendip\bin -Djava.ext.dirs=F:\sendip\lib\ com.wzr.SendIp

 

Path的值设置为你的JDK安装目录的bin目录的路径.作用是让操作系统能找到java.exe和javac.exe等执行程序.

Path:(加入bin路径)D:\Program Files\Java\jdk1.6.0_43\bin
classpath的值则为JDK安装目录下的jre目录下的lib文件夹的路径。作用是当执行类文件时告诉操作系统去哪找类文件.
classpath:(前面一定要加个点--意思是包括当前目录).;D:\Program Files\Java\jdk1.6.0_43\jre\lib
做个HelloWorld.java文件测试一下

public class HelloWorld{
public static void main (String[] args)
{
 System.out.println("Hello World!");

}
}


命令行编译运行:
javac HelloWorld.java
java HelloWorld
输出“Hello World!”就说明JDK安装成功了。

附:
 

Java执行环境本身就是一个平台,执行于这个平台上的程序是已编译完成的Java程序(Java程序编译完成之后,会以.class文件存在)。如果将Java执行环境比喻为操作系统,则设置Classpath的目的就是让Java执行环境找到指定的Java程序(也就是.class文件)。

如果所使用的JDK工具程序具有Classpath命令选项,则可以在执行工具程序时一并指定Classpath。例如:

javac -classpath classpath1;classpath2...其中classpath1、classpath 2是实际要指定的路径。也可以在命令符模式下执行以下的命令,直接设置环境变量,包括Classpath变量(这个设置在下次重新打开命令符模式时就不再有效):

set CLASSPATH=%CLASSPATH%;classpath1;classpath2...总而言之,设置Classpath的目的,在于告诉Java执行环境,在哪些目录下可以找到您所要执行的Java程序(.class文件)。 

关于环境变量classpath与class_path的区别
java先找classpath,但是如果找不到的话他会看系统的环境变量class_path

lib\rt.jar 是JDK的核心库


附: 
PATH and CLASSPATH
http://docs.oracle.com/javase/tutorial/essential/environment/paths.html
Setting the class path
http://docs.oracle.com/javase/7/docs/technotes/tools/windows/classpath.html

Classpath (Java)
http://en.wikipedia.org/wiki/Classpath_(Java)

© 著作权归作者所有

共有 人打赏支持
j
粉丝 0
博文 15
码字总数 7759
作品 0
惠州
程序员
Linux安装JDK、Tomcat、部署Java项目详情

1.在windows安装远程工具 我们远程访问windows服务器可以使用windows自带的远程工具,但是远程访问Linux需要下载辅助工具,我使用的是XShell,网上下载即可。安装成功后,界面如下: 在主机栏...

leo187的博客 ⋅ 2017/12/22 ⋅ 0

安装多个版本的jdk

电脑上装了两个版本的JDK,分别是Jdk1.5u6和Jdk1.6u29,打开命令行窗口,输入 java -version 命令,显示的当前使用Jdk版本号是1.6,由于测试需要将当前JDK环境变量设为1.5,但通过一般的环境...

lwwjing ⋅ 2016/03/18 ⋅ 0

Windows8系统中JAVA环境变量的配置

在Windows8系统中进行JAVA环境变量的配置 Windows8是微软最新和最具有革命性变化的操作系统。该系统旨在让人们的日常电脑操作更加简单和快捷,为人们提供高效易行的工作环境。目前,微软官方...

掬一捧 ⋅ 2012/08/24 ⋅ 0

Windows JDK 版本管理器--jvms

介绍 JDK Version Manager (JVMS) for Windows Windows下JDK多版本管理器,类似 nvm, nvmw, rvm jvms下载地址 这对JDK不同版本之间切换是非常有用的。例如,如果你想测试一个项目你想使用最新...

东方星痕 ⋅ 2015/11/09 ⋅ 0

Ant安装使用说明

什么是 Apache Ant? Ant是 Another Neat Tool 的缩写,它是一种基于 Java 的构建(build)工具。最初由 James DuncanDavidson 因为 Make 工具无法满足他的需求而开发,目前由 Apache 软件基金...

郭恩洲_OSC博客 ⋅ 2015/03/06 ⋅ 0

Ubuntu 14.04 安装 JDK 8,ubuntu14.04

Ubuntu 14.04 安装 JDK 8,ubuntu14.04 第一步,下载Linux版JDK 可以通过访问Oracle官网下载,或者直接通过命令行下载。 lxh@ubuntu:~$ wget -c http://download.oracle.com/otn-pub/java/jd...

youxizhe ⋅ 2015/02/03 ⋅ 2

jvms 0.0.2 发布,Windows JDK 版本管理器

JDK Version Manager (JVMS) for Windows Windows下JDK多版本管理器,类似 nvm, nvmw, rvm 本软件源于 nvm-windows 这对JDK不同版本之间切换是非常有用的。例如,如果你想测试一个项目你想使...

东方星痕 ⋅ 2015/12/03 ⋅ 13

jvms 2.0.0 重制版更新,Windows JDK 版本管理器

重写了整个软件, 现在所有操作都在一个exe文件里。 介绍 JDK Version Manager (JVMS) for Windows Windows下JDK多版本管理器,类似 nvm, nvmw, rvm jvms下载地址 这对JDK不同版本之间切换是...

东方星痕 ⋅ 2017/07/24 ⋅ 28

Android 2D游戏引擎AndEngine配置环境

Android 2D游戏引擎AndEngine配置环境 1.2 配置环境 在任何编程中,都需要一些软件或者硬件的支持。否则,没有硬件软件是不可能存在的,而想要编写对应语言的的程序,这需要对应语言库和编译...

大学霸 ⋅ 2015/01/30 ⋅ 0

jvms 0.0.1 发布,Windows JDK 版本管理器

JDK Version Manager (JVMS) for Windows Windows下JDK多版本管理器,类似 nvm, nvmw, rvm 本软件源于 nvm-windows , 现在是第一版 . 这对JDK不同版本之间切换是非常有用的。例如,如果你想测...

东方星痕 ⋅ 2015/11/09 ⋅ 17

没有更多内容

加载失败,请刷新页面

加载更多

下一页

Mahout基于内存的DataMode 推荐引擎Demo2

Mahout基于内存的DataMode 推荐引擎Demo2 //注释的部分是基于文件也可以理解为基于日志文件的, //DataModel 可以有很多种,实现abstractDataMode的子类,原则上都可以作为数据源,个人觉得,...

xiaomin0322 ⋅ 13分钟前 ⋅ 0

Docker部署Tomcat及Web应用

一、在线下载docker yum install -y epel-releaseyum install docker-io # 安装dockerchkconfig docker on # 加入开机启动service docker start # 启动docker服务 1 ...

Jeam_ ⋅ 13分钟前 ⋅ 0

研发运营一体化能力成熟度模型

研发运营一体化是指在 IT 软件及相关服务的研发及交付过程中,将应用的需求、开发、测试、部 署和运营统一起来,基于整个组织的协作和应用架构的优化,实现敏捷开发、持续交付和应用运营的无...

stars永恒 ⋅ 19分钟前 ⋅ 0

jQuery缩小放大触发事件

jquery的resize()方法使用 <html> <head> <script type="text/javascript" src="/jquery/jquery.js"></script> <script type="text/javascript"> var i = 0; $(document).ready(function(){ ......

RobertZou ⋅ 19分钟前 ⋅ 0

eclipse python 搭建

https://jingyan.baidu.com/article/9113f81b68ebce2b3214c7e0.html https://www.cnblogs.com/ZhangRuoXu/p/6397756.html https://blog.csdn.net/zhangphil/article/details/78962159 字符集......

之渊 ⋅ 20分钟前 ⋅ 0

weex,react native,flutter

weex: 一次编写,处处运行 RN: 学一次,到处写(针对安卓,IOS平台特性 各自写,会有很大一部分是一样的代码) 这些方案是否真正的解决了跨平台问题呢?从目前的状况来看,很显然是没有的,因...

东东笔记 ⋅ 26分钟前 ⋅ 0

Spring Cloud微服务分布式云架构-集成项目

Spring Cloud集成项目有很多,下面我们列举一下和Spring Cloud相关的优秀项目,我们的企业架构中用到了很多的优秀项目,说白了,也是站在巨人的肩膀上去整合的。在学习Spring Cloud之前大家必...

明理萝 ⋅ 30分钟前 ⋅ 1

SpringMVC图片上传问题解决

当我们上传图片时一直发现: MultipartFile file = null; if (request instanceof MultipartHttpServletRequest) 匹配不上, 解决方案: 在前端xml加入如下配置代码即可 <!-- 图片上传bean --...

泉天下 ⋅ 33分钟前 ⋅ 0

Spring表达式语言(SpEL)

1、SpEL引用 Spring EL在bean创建时执行其中的表达式。此外,所有的Spring表达式都可以通过XML或注解的方式实现。下面将使用Spring表达式语言(SpEL),注入字符串,整数,Bean到属性。 SpEL的...

霍淇滨 ⋅ 49分钟前 ⋅ 0

Gradle使用阿里云镜像

gradle 生命周期中有一个初始化( Initialization )的过程,这个过程运行在 build script 之前,我们可以在这个地方做一点系统全局的设置,如配置仓库地址。 你可以在以下几个位置实现仓库地址...

明MikeWoo ⋅ 57分钟前 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部