- 浏览: 415064 次
- 性别:
- 来自: 上海
文章分类
- 全部博客 (255)
- Android (53)
- java (57)
- javascript (7)
- linux (19)
- springside3 (6)
- spring (2)
- struts2 (11)
- hibernate (2)
- jsp&servlet (15)
- jquery (1)
- ExtJs (5)
- freemarker (1)
- apache (5)
- mysql (3)
- tomcat (3)
- eclipse&maven (23)
- 电脑小技巧 (1)
- 配置安装 (3)
- 开源框架 (2)
- 设计模式 (2)
- 架构 (2)
- ajax (1)
- 正则表达式 (7)
- 测试 (2)
- 装修 (1)
- 不错的软件 (4)
- http协议 (2)
- 网络 (2)
- windows (2)
- nodejs (1)
最新评论
-
yhyx:
好
JAVA URI URL区别 -
dingbuoyi:
我文章很早以前写的啊 估计软件版本早更新了 你要自己研究一下
windows下Sublime Text 2开发 Nodejs -
di1984HIT:
写的很好,学习了
【转帖】IP网段的计算和划分 -
农民柏柏:
感谢分享
【转】Android实现人人网点击“+”弹出效果 -
lianwanf:
大神,求源码,很想要那jar包.官方的不懂下载啊.谢谢啊. ...
开源框架ignition[二]
http://download.oracle.com/javase/1.4.2/docs/tooldocs/solaris/classpath.html
CLASSPATH是什么?它的作用是什么?
它是Javac编译器的一个环境变量。
它的作用与import、package关键字有关。
当你写下improt java.util.*时,编译器面对import关键字时,就知道你要引入java.util这个package中的类;但是编译器如何知道你把这个 package放在哪里了呢?所以你首先得告诉编译器这个package的所在位置;如何告诉它呢?就是设置CLASSPATH啦 :) 如果java.util这个package在c:\JDK\ 目录下,你得把c:\jdk\这个路径设置到CLASSPATH中去!当编译器面对import java.util.*这个语句时,它先会查找CLASSPATH所指定的目录,并检视子目录java\util是否存在,然后找出名称吻合的已编译文件(。class文件)。如果没有找到就会报错!
CLASSPATH有点像c\C++编译器中的INCLUDE路径的设置哦,是不是?当c\c++编译器遇到include <iostream>这样的语句,它是如何运作的?哦,其实道理都差不多!搜索INCLUDE路径,检视文件!
当你自己开发一个package时,然后想要用这个package中的类;自然,你也得把这个package所在的目录设置到CLASSPATH中去!
CLASSPATH的设定,对JAVA的初学者而言是一件棘手的事。所以Sun让JAVA2的JDK更聪明一些。你会发现,在你安装之后,即使完全没有设定CLASSPATH,你仍然能够编译基本的JAVA程序,并且加以执行。
使用 CLASSPATH 环境变量
一般用户将想要使用 -classpath 命令行选项。下面将介绍如何设置 CLASSPATH 环境变量或清除以前安装遗留下的设置。
设置 CLASSPATH
在 DOS 提示符下,可用 set 命令修改 CLASSPATH 环境变量。其格式为:
set CLASSPATH=path1;path2 ...
路径应该以指定驱动器的字母开头,例如 C:\...。这样,在偶然切换到不同驱动器时仍可找到类(例如,如果路径项以 \... 开头,并且当前位于驱动器 D: 上,则所需的类将在 D: 而不是 C: 驱动器上找)。
清除 CLASSPATH
如果 CLASSPATH 环境变量被设置成不正确的值,或启动文件或脚本程序设置了不正确路径,则可通过使用下列命令清除 CLASSPATH:
C:> set CLASSPATH=
该命令仅清除当前会话的 CLASSPATH。要确保在以后的会话中具有正确的 CLASSPATH 设置,则应该删除或修改启动设置。
更改启动设置
如果在系统启动时设置 CLASSPATH 变量,则查找它的位置取决于所使用的操作系统:
操作系统 方法
Windows 98 和
Windows 95 检查 autoexec.bat 文件中的 set 命令。
Windows xp 启动“控制面板”,选择“系统”,单击“环境”选项卡,并在“用户变量”部分中,检查 CLASSPATH 变量。
理解类路径和包名
Java 类被组织成包,而这些包被映射到文件系统中的目录。但是与文件系统不同的是,无论何时指定包名,都应指定完整包名 -- 永远不要仅指定它的一部分。例如,java.awt.Button 的包名总是应指定为 java.awt。
例如,假定想要 Java 运行环境在包 utility.myapp 中查找名为 Cool.class 的类。如果该目录的路径为 C:\java\MyClasses\utility\myapp,则应该将类路径设置成包含 C:\java\MyClasses。
要运行该应用程序,可使用下述 JVM 命令:
C:> java -classpath C:\java\MyClasses utility.myapp.Cool
当该应用程序运行时,JVM 使用类路径设置查找在 utility.myapp 包中定义的任何其他类。
注意:应在命令中指定完整包名。例如,设置类路径包含 C:\java\MyClasses\utility 并使用命令 java myapp.Cool 是不可能的,因为这找不到该类。
(您可能想知道用什么定义类的包名。答案是:包名是类的一部分,并且不能修改,除非重新编译该类。)
注意:包规范机制一个有趣的结果是,属于相同包的多个文件实际上可存在于不同的目录中。对于每个类,包名都是相同的,但是每个文件的路径可从类路径中的不同目录开始。
文件夹和归档文件
当类存储在目录(文件夹)中时,例如 c:\java\MyClasses\utility\myapp,则类路径项指向包含包名第一个元素的目录(在这里为 C:\java\MyClasses,因为包名是 utility.myapp)。
但是当类存储在归档文件(.zip 或 .jar 文件)中时,类路径项则是该 .zip 或 .jar 文件的路径。例如,要使用位于 .jar 文件中的类库,则命令应该类似下述形式:
java -classpath C:\java\MyClasses\myclasses.jar utility.myapp.Cool
多重指定
要在目录 C:\java\MyClasses 和 C:\java\OtherClasses 中查找类文件,则可将类路径设置为:
java -classpath C:\java\MyClasses;C:\java\OtherClasses ...
注意两个路径之间用分号分隔。
指定次序
指定多个类路径项的次序是相当重要的。Java 解释器将按照目录在类路径变量中的次序在各个目录中查找类。在上例中,Java 解释器首先在目录 C:\java\MyClasses 中查找需要的类。只有当它在该目录中没有找到该类时,解释器才能到 C:\java\OtherClasses 目录中查找。
以上需要注意的是:我是在j2se1.5的版本上设置的 系统是XP.Pro
1.在 “我的电脑”下设置成功CLASSPATH后 就不用再在每次运行javac和java命令提示符的时候设置CLASSPATH 除非包路径有所改变
2.编译成功以后 可以在任何地方执行该.class文件
3.当运行java命令提示符的时候 务必注明该文件的相对路径
4.在设置 文件所在包的包名的时候不能跟 java定义的包名字一样 诸如java,javax之类的
引用
CLASSPATH是什么?它的作用是什么?
它是Javac编译器的一个环境变量。
它的作用与import、package关键字有关。
当你写下improt java.util.*时,编译器面对import关键字时,就知道你要引入java.util这个package中的类;但是编译器如何知道你把这个 package放在哪里了呢?所以你首先得告诉编译器这个package的所在位置;如何告诉它呢?就是设置CLASSPATH啦 :) 如果java.util这个package在c:\JDK\ 目录下,你得把c:\jdk\这个路径设置到CLASSPATH中去!当编译器面对import java.util.*这个语句时,它先会查找CLASSPATH所指定的目录,并检视子目录java\util是否存在,然后找出名称吻合的已编译文件(。class文件)。如果没有找到就会报错!
CLASSPATH有点像c\C++编译器中的INCLUDE路径的设置哦,是不是?当c\c++编译器遇到include <iostream>这样的语句,它是如何运作的?哦,其实道理都差不多!搜索INCLUDE路径,检视文件!
当你自己开发一个package时,然后想要用这个package中的类;自然,你也得把这个package所在的目录设置到CLASSPATH中去!
CLASSPATH的设定,对JAVA的初学者而言是一件棘手的事。所以Sun让JAVA2的JDK更聪明一些。你会发现,在你安装之后,即使完全没有设定CLASSPATH,你仍然能够编译基本的JAVA程序,并且加以执行。
引用
使用 CLASSPATH 环境变量
一般用户将想要使用 -classpath 命令行选项。下面将介绍如何设置 CLASSPATH 环境变量或清除以前安装遗留下的设置。
设置 CLASSPATH
在 DOS 提示符下,可用 set 命令修改 CLASSPATH 环境变量。其格式为:
set CLASSPATH=path1;path2 ...
路径应该以指定驱动器的字母开头,例如 C:\...。这样,在偶然切换到不同驱动器时仍可找到类(例如,如果路径项以 \... 开头,并且当前位于驱动器 D: 上,则所需的类将在 D: 而不是 C: 驱动器上找)。
清除 CLASSPATH
如果 CLASSPATH 环境变量被设置成不正确的值,或启动文件或脚本程序设置了不正确路径,则可通过使用下列命令清除 CLASSPATH:
C:> set CLASSPATH=
该命令仅清除当前会话的 CLASSPATH。要确保在以后的会话中具有正确的 CLASSPATH 设置,则应该删除或修改启动设置。
更改启动设置
如果在系统启动时设置 CLASSPATH 变量,则查找它的位置取决于所使用的操作系统:
操作系统 方法
Windows 98 和
Windows 95 检查 autoexec.bat 文件中的 set 命令。
Windows xp 启动“控制面板”,选择“系统”,单击“环境”选项卡,并在“用户变量”部分中,检查 CLASSPATH 变量。
理解类路径和包名
Java 类被组织成包,而这些包被映射到文件系统中的目录。但是与文件系统不同的是,无论何时指定包名,都应指定完整包名 -- 永远不要仅指定它的一部分。例如,java.awt.Button 的包名总是应指定为 java.awt。
例如,假定想要 Java 运行环境在包 utility.myapp 中查找名为 Cool.class 的类。如果该目录的路径为 C:\java\MyClasses\utility\myapp,则应该将类路径设置成包含 C:\java\MyClasses。
要运行该应用程序,可使用下述 JVM 命令:
C:> java -classpath C:\java\MyClasses utility.myapp.Cool
当该应用程序运行时,JVM 使用类路径设置查找在 utility.myapp 包中定义的任何其他类。
注意:应在命令中指定完整包名。例如,设置类路径包含 C:\java\MyClasses\utility 并使用命令 java myapp.Cool 是不可能的,因为这找不到该类。
(您可能想知道用什么定义类的包名。答案是:包名是类的一部分,并且不能修改,除非重新编译该类。)
注意:包规范机制一个有趣的结果是,属于相同包的多个文件实际上可存在于不同的目录中。对于每个类,包名都是相同的,但是每个文件的路径可从类路径中的不同目录开始。
文件夹和归档文件
当类存储在目录(文件夹)中时,例如 c:\java\MyClasses\utility\myapp,则类路径项指向包含包名第一个元素的目录(在这里为 C:\java\MyClasses,因为包名是 utility.myapp)。
但是当类存储在归档文件(.zip 或 .jar 文件)中时,类路径项则是该 .zip 或 .jar 文件的路径。例如,要使用位于 .jar 文件中的类库,则命令应该类似下述形式:
java -classpath C:\java\MyClasses\myclasses.jar utility.myapp.Cool
多重指定
要在目录 C:\java\MyClasses 和 C:\java\OtherClasses 中查找类文件,则可将类路径设置为:
java -classpath C:\java\MyClasses;C:\java\OtherClasses ...
注意两个路径之间用分号分隔。
指定次序
指定多个类路径项的次序是相当重要的。Java 解释器将按照目录在类路径变量中的次序在各个目录中查找类。在上例中,Java 解释器首先在目录 C:\java\MyClasses 中查找需要的类。只有当它在该目录中没有找到该类时,解释器才能到 C:\java\OtherClasses 目录中查找。
以上需要注意的是:我是在j2se1.5的版本上设置的 系统是XP.Pro
1.在 “我的电脑”下设置成功CLASSPATH后 就不用再在每次运行javac和java命令提示符的时候设置CLASSPATH 除非包路径有所改变
2.编译成功以后 可以在任何地方执行该.class文件
3.当运行java命令提示符的时候 务必注明该文件的相对路径
4.在设置 文件所在包的包名的时候不能跟 java定义的包名字一样 诸如java,javax之类的
发表评论
-
JAVA中的Observable
2012-06-24 16:51 14551 addObserver deleteObserver都是同 ... -
为什么覆盖了equals方法一定要覆盖hashcode方法?
2012-06-08 11:14 13001 测试代码 public class HashMapTe ... -
java synchronized
2012-03-21 11:30 476我的理解,不一定正确的,如果有错误欢迎留言纠正 1 pub ... -
特殊字符与UNICODE码
2011-08-10 17:27 1713Unicode(统一码、万国码、单一码、标准万国码)是计算机科 ... -
【转】如何用ResourceBundle来读取配置文件 .
2011-08-10 16:47 844引用 对于ja va基础很好的人来说,这个应该是简单的不能再简 ... -
嵌入式JVM
2011-02-22 10:22 1343Robert Lougher发布了嵌入式JVM比较结果。他在嵌 ... -
CLASSPATH PATH 解释
2011-02-11 17:01 761ava执行环境本身就是一个平台,执行于这个平台上的程序是已编译 ... -
【转帖】java verbose命令
2011-02-11 17:01 828java -verbose[:class|gc|jni] ... -
JAVA嵌入式开发
2011-02-11 15:07 1105JVM选用 JAMVM http://jamvm.source ... -
JAVA 编译 解释 运行
2011-02-11 10:19 1338java是混合型语言。 先通过JAVA编译器把.java文件编 ... -
【转帖】类分解器JavaP--分析Java字节码
2011-02-11 09:38 1178原帖地址:http://www.comprg.com.cn/d ... -
【转帖】Java字节码揭秘(四)
2011-02-11 09:36 785原帖地址:http://blog.csdn.net/BU_Be ... -
【转帖】Java字节码揭秘(三)
2011-02-11 09:35 759原帖地址:http://blog.csdn.net/BU_Be ... -
【转帖】Java字节码揭秘(二)
2011-02-11 09:34 786原帖地址:http://blog.csdn.net/BU_Be ... -
【转帖】Java字节码揭秘(一)
2011-02-11 09:33 814原帖地址:http://blog.csdn.net/BU_Be ... -
JAVA volatile 关键字
2011-01-19 16:30 752每次读这个变量仍然要老老实实从内存读取,每次写这个变量也仍然要 ... -
java 排序
2011-01-11 15:47 9881 对象自然排序 第一种方式 排序对象必须实现Comparab ... -
JAVA 静态变量
2011-01-06 10:52 1240个人的总结 1 静态变量只有一份被类的所有实例共享 2 静态变 ... -
java 正则表达式
2011-01-05 17:18 430http://topic.csdn.net/u/2008082 ... -
java 注解
2011-01-05 10:20 386http://www.iteye.com/topic/4000 ...
相关推荐
### Java Classpath 配置详解 #### 一、前言 对于初学Java的朋友而言,配置Java环境常常是一项艰巨的任务,尤其是如何正确设置`classpath`。这篇文章将通过一系列实际操作来详细阐述`classpath`的配置过程,帮助...
### Java Classpath 理解 #### 一、在命令行查看 Classpath 在 Java 开发环境中,了解如何查看当前环境下的 classpath 非常重要。这有助于开发者明确类库和其他依赖项的位置,从而更好地管理项目的运行环境。 1. ...
CLASSPATH="$CLASSPATH:""$jar" done windows : SETLOCAL ENABLEDELAYEDEXPANSION set LIB=xx set CLASSPATH=. FOR %%C IN (LIB\*.jar) DO set CLASSPATH=!CLASSPATH!;%%C echo %CLASSPATH%
### Java Classpath 全解 对于初学者而言,理解 Java 中的 `classpath` 概念可能会感到有些困难。很多时候,程序在某个环境下可以正常运行,但换到另一个环境时却出现了问题,这往往与 `classpath` 设置不当有关。...
Java的ClassPath构建是Java应用程序运行时环境查找类和资源的重要机制。理解并正确设置ClassPath对于任何Java开发者来说都是至关重要的,因为它决定了虚拟机(JVM)如何找到并加载所需的类文件。在这个主题中,我们...
java classPath checker eclipse myeclipse
### Java的Classpath详解及其重要性 在Java编程的学习与实践中,环境配置是入门的关键步骤之一,其中最为棘手的问题之一便是如何正确设置`classpath`。`classpath`不仅影响着程序能否正常编译和运行,还关系到...
Java 环境配置与设置 JAVA_HOME, CLASSPATH, PATH 的目的 Java 环境配置是 Java 开发的基础,我们需要正确地配置 JAVA_HOME, CLASSPATH, PATH 等环境变量,以便正确地编译和运行 Java 程序。在本节中,我们将详细地...
Java命令行classpath(类路径)的设置是Java开发过程中的一项基础操作,对于理解和运行Java程序至关重要。类路径是指定Java虚拟机(JVM)在执行Java程序时查找类文件的位置。正确配置类路径能确保JVM能够找到并加载...
Java中的ClassPath和Package是Java开发中至关重要的概念,它们直接影响到Java程序的编译和运行。在这篇文章中,我们将详细探讨这两个主题。 首先,让我们理解什么是ClassPath。ClassPath是Java虚拟机(JVM)查找类...
### Java中的Path与Classpath设置详解 在Java开发过程中,正确配置环境变量是十分重要的一步。其中,`path`和`classpath`是最为关键的两个环境变量,它们直接影响到Java程序能否正常编译和运行。 #### 一、Path 的...
Java语言的classpath环境变量是Java开发和运行过程中不可或缺的一个配置项。它定义了Java虚拟机(JVM)在执行程序时查找类文件的路径,确保JVM能够找到所需的类库和资源。理解并正确设置classpath对于Java开发者至关...
### Java ClassLoader与ClassPath详解 #### 一、概述 在Java编程中,类加载机制是十分关键的一个环节。类加载器(`ClassLoader`)负责将编译后的`.class`文件加载到Java虚拟机(JVM)中执行,而类路径(`ClassPath...
- 在运行Java程序时,JVM会查找类路径(Classpath)中定义的路径来加载类和其他资源。`src`目录下的文件在构建后会被包含到Classpath中。 3. **使用Java I/O流读取文件**: - Java提供了一系列的I/O流类来处理...
Java的classpath是每个Java开发者都必须了解的关键概念,它决定了JVM(Java虚拟机)在执行Java程序时如何查找和加载所需的类文件。本文将深入探讨classpath的基本原理、配置方式以及如何确保`javac`正确编译运行Java...
<java classpath="${ddl.insertClassName.path}" classname="${ddl.insertClassName}" fork="YES" classpathref="compile.classpath"> ${ddl.insertClassName.path}/${arg.value}" /> </java> ``` 1. **...
在编程世界中,Java是一种广泛使用的跨平台语言,它的运行依赖于类路径(Classpath),这是一个指示Java虚拟机(JVM)查找.class文件的环境变量。本文将详细讲解如何在Linux和Windows操作系统下动态设置classpath以...
path与classpath是Java开发中两个常见的概念,但它们之间的区别却经常被混淆。下面,我们将详细介绍path和classpath的作用、区别以及它们在Java开发中的应用。 path的作用 path是系统用来指定可执行文件的完整路径...
`classpath`环境变量则主要用在Java等基于虚拟机的语言中,它告诉Java虚拟机(JVM)在哪里可以找到类文件或jar包。当运行Java程序时,JVM会根据`classpath`中定义的路径来加载所需的类文件。如果类文件不在`...