﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>BlogJava-JAVA进化者-文章分类-JAVA</title><link>http://www.blogjava.net/aqing50/category/10047.html</link><description /><language>zh-cn</language><lastBuildDate>Thu, 05 Apr 2007 21:53:33 GMT</lastBuildDate><pubDate>Thu, 05 Apr 2007 21:53:33 GMT</pubDate><ttl>60</ttl><item><title>JAVA的环境变量</title><link>http://www.blogjava.net/aqing50/articles/41219.html</link><dc:creator>Aqing</dc:creator><author>Aqing</author><pubDate>Sat, 15 Apr 2006 04:33:00 GMT</pubDate><guid>http://www.blogjava.net/aqing50/articles/41219.html</guid><wfw:comment>http://www.blogjava.net/aqing50/comments/41219.html</wfw:comment><comments>http://www.blogjava.net/aqing50/articles/41219.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/aqing50/comments/commentRss/41219.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/aqing50/services/trackbacks/41219.html</trackback:ping><description><![CDATA[
		<p style="FONT-SIZE: 12px; FONT-FAMILY: 宋体">    在<font color="#00479b">《JDK、JRE与JVM》</font>中提到，在我们的电脑里面有多套JRE，由java.exe来决定使用哪一套JRE。同时，我们系统中还有多个java.exe，当我们在命令行输入：<br />java xxx<br />的时候，执行的是哪一个java.exe呢？这就涉及到JAVA的环境变量了。</p>
		<p style="FONT-SIZE: 12px; FONT-FAMILY: 宋体">    如果我们的环境变量设置如下：<br /><img src="http://www.blogjava.net/images/blogjava_net/aqing50/10049/t_JRE1.jpg" /><br />则执行的是C:\WINDOWS\system32下的java.exe，它选择的是C:\Program Files\Java下的那套JRE；</p>
		<p style="FONT-SIZE: 12px; FONT-FAMILY: 宋体">    如果我们的环境变量设置如下：<br /><img src="http://www.blogjava.net/images/blogjava_net/aqing50/10049/t_JRE2.jpg" /><br />则执行的是C:\Program Files\Java\jdk1.5.0_06\bin下的java.exe，它选择的是C:\Program Files\Java\jdk1.5.0_06下的那套JRE。</p>
<img src ="http://www.blogjava.net/aqing50/aggbug/41219.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/aqing50/" target="_blank">Aqing</a> 2006-04-15 12:33 <a href="http://www.blogjava.net/aqing50/articles/41219.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>JDK、JRE与JVM</title><link>http://www.blogjava.net/aqing50/articles/41217.html</link><dc:creator>Aqing</dc:creator><author>Aqing</author><pubDate>Sat, 15 Apr 2006 04:25:00 GMT</pubDate><guid>http://www.blogjava.net/aqing50/articles/41217.html</guid><wfw:comment>http://www.blogjava.net/aqing50/comments/41217.html</wfw:comment><comments>http://www.blogjava.net/aqing50/articles/41217.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/aqing50/comments/commentRss/41217.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/aqing50/services/trackbacks/41217.html</trackback:ping><description><![CDATA[
		<p style="FONT-SIZE: 12px; FONT-FAMILY: 宋体">    JDK(JAVA Develop Kit，JAVA开发工具包)提供了Java的开发环境和运行环境，主要用于开发JAVA程序，面向Java程序的开发者;<br />    JRE(JAVA Runtime Environment，JAVA运行环境)提供了Java的运行环境，主要用于执行JAVA程序，面向Java程序的使用者。</p>
		<p style="FONT-SIZE: 12px; FONT-FAMILY: 宋体">    一般情况下，每个JDK里面包含两套JRE。以JDK 1.5.x（默认安装路径是C:\Program Files\Java）为例，在C:\Program Files\Java\jdk1.5.x\目录下有一个JRE，在C:\Program Files\Java\目录下也有一个JRE。为什么会有两套JRE呢？因为JDK里面的工具也是用JAVA编写的，它们本身运行的时候也需要一套JRE，即C:\Program Files\Java\jdk1.5.x\目录下的JRE。而C:\Program Files\Java\目录下的JRE是用来执行我们自己编写的JAVA程序。当然，两套JRE中的任何一套都可以用来执行我们自己编写的JAVA程序，但是JDK里面的工具只能由C:\Program Files\Java\jdk1.5.x\目录下的JRE来执行。<br />    既然在我们的电脑里面至少有两套JRE（如果安装了Borland JBuilder等高级开发工具，电脑里面会有更多套的JRE），那么由谁来决定使用哪一套JRE呢？这个重担就落在java.exe的身上。<br />    当我们在命令行输入：<br />java xxx<br />的时候，java.exe的任务就是在我们电脑上众多的JRE中找到合适的JRE来执行xxx。java.exe依据以下顺序来寻找JRE：<br />    （1）自己的目录下有没有JRE目录；<br />    （2）父目录下有没有JRE目录；<br />    （3）查询注册表HKEY_LOCAL_MACHINE\Software\JavaSoft\Java Runtime Environment\<br />所以java.exe的执行结果与我们电脑里哪一个java.exe（搜索一下就会发现我们电脑里面也不止一个java.exe）被执行以及哪套JRE来执行JVA程序有很大的关系。<br />    另外，java.exe在找到合适的JRE以后，还有一个验证版本的程序，也就是java.exe与JRE的版本一致才可以执行。如果出现版本不一致的问题，一定要记得两件事情：<br />    （1）哪一个java.exe被执行；<br />    （2）java.exe找到哪一套JRE。<br />只要这两件事情确定了，我们就抓住了问题的来龙去脉，解决起来也就轻而易举了。</p>
		<p style="FONT-SIZE: 12px; FONT-FAMILY: 宋体">    JVM(JAVA Virtual Machine，JAVA虚拟机)是JRE的一部分，JRE是JVM的补充。那么JVM到底在哪里呢？我们打开C:\Program Files\Java\jdk1.5.x\jre\bin，会看到client和server两个目录，在这两个目录中分别可以看到jvm.dll，这就是我们所说的JVM之所在。</p>
<img src ="http://www.blogjava.net/aqing50/aggbug/41217.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/aqing50/" target="_blank">Aqing</a> 2006-04-15 12:25 <a href="http://www.blogjava.net/aqing50/articles/41217.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>