红联Linux门户
Linux帮助

JAVA中设置类路径!$$%%

发布时间:2005-05-04 00:16:03来源:红联作者:wade9900
结构
可通过对 JDK 工具使用 -classpath 选项(首选方法)或设置 CLASSPATH 环境变量来设置类路径。
C:> jdkTool -classpath path1;path2...
C:> set CLASSPATH=path1;path2...
每个 path 以文件名或目录结尾,该文件名或目录取决于将类路径设置成什么:
对于包含 .class 文件的 .zip 或 .jar 文件,路径以 .zip 或 .jar 文件名结尾。
对于未命名包中的 .class 文件,路径以包含 .class 文件的目录结尾。
对于已命名包中的 .class 文件,路径以包含“root”包(完整包名中的第一个包)的目录结尾。
用分号来分隔多个项目。使用 set 命令时,需要省略等号两边的空格(=)。其中 jdkTool 可以为 java、javac、javadoc,等等。有关详细列表,参见 JDK 开发工具。
说明
类路径告诉 Java 应用程序去哪里查找第三方和自定义类 -- 即不是 Java 扩展或 Java 平台一部分的类。在 JDK 1.2 中,JVM 和其他 JDK 工具通过依次搜索平台库、库扩展和类路径来查找类(有关搜索策略的详细信息,参见如何查找类)。
多数应用程序的类库都会充分利用扩展机制。因此,只有想要加载某个类库 (a) 未位于当前目录或其分枝包中 且 (b) 未位于扩展机制所指定的位置时,才需设置类路径。

如果用户是从旧版本 JDK 升级而来,则启动设置可能包括不再需要的 CLASSPATH 设置。这时应该删除任何非应用程序特定的设置。有些使用 Java 虚拟机的第三方应用程序可能修改 CLASSPATH 环境变量以包括它们使用的类库。这种设置可以保留。

可通过在调用 JVM 或其他 JDK 工具时使用 Java 工具的 -classpath 选项改变类路径(例如: java -classpath ...)。这是改变类路径的首选方法。还可通过使用 CLASSPATH 环境变量改变类路径。

注意:JDK 1.2 缺省类路径是当前目录。设置 CLASSPATH 变量或使用 -classpath 命令行开关将覆盖缺省值,因而如果想要在搜索路径中包括当前目录,则必须在新设置中包括“.”。
类可以存储在目录(文件夹)或归档文件(例如 classes.zip 或 classes.jar)中。有关归档文件的详细信息和类路径的工作原理,参见本文档最后的理解类路径和包名。

重要说明:JDK 旧版本在缺省类路径中还包括 /classes 项。该目录仅供 JDK 使用,且不用于应用程序类。应用程序类应该放置在 JDK 外部的目录。这样,安装新 JDK 时不必需要重新安装应用程序库。为了与旧版本的兼容性,使用 /classes 目录作为类库的应用程序在当前版本中仍能运行,但不能保证在以后的版本中它们还能运行。
使用 Java 工具的 -classpath 选项
Java 工具 java、jdb、javac 和 javah 具有 -classpath 选项,在工具运行时它将取代缺省类路径或由 CLASSPATH 环境变量所指定的类路径。这是改变类路径设置的推荐方法,因为这样每个应用程序可具有它所需的类路径而又不会干扰其他应用程序。
运行时工具 java 和 jdb 还具有 -cp 选项。该选项是 -classpath 的缩写。

对于非常特殊的情况,java 和 javac 都具有开关,使得可改变它们使用的路径以查找它们自己的类库。但是,绝大多数用户从来都不会用到这些开关。


使用 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 NT 启动“控制面板”,选择“系统”,单击“环境”选项卡,并在“用户变量”部分中,检查 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 目录中查找。
更多的知识,请登陆www.sun.com网站!谢谢支持!
文章评论

共有 2 条评论

  1. youbo1 于 2008-05-03 22:47:16发表:

    [font=宋体]三亚旅游[/font][font=Times New Roman] [/font][font=宋体]海南旅游[/font] 海南旅游病情危重!
      这绝不是危言耸听,除了一些红顶子还在对近年来海南的海南旅游市场陷入“挽救——下跌”的死循环文过饰非外,几乎所有人都形成了这样的共识。海南作为旅游资源大省却始终无法跻身旅游强省之列,不但不能成为支柱产业为我省贡献出更多的GDP,反而显出效益每况愈下之疲态,市场日渐萎缩之凶兆,是我们每一个人都颜面无光的尴尬事。眼看着海南旅游被推进了重症监护病房,惨状非常令人心焦,遂顾不得有识之士的侧目和非议,我也挽起袖子“咸与维新”,为海南旅游市场望闻问切,出具经济病理分析报告一份,聊以备查。
      “零负团费”是怎么炼成的?
      从经济学的角度来看,海南旅游市场出现的“零负团费”现象是可以得到合理的解释的。让我们先全面地观察海南旅游公司,我们便会发现这个市场近乎完全竞争市场,有四个客观存在可以佐证我的观点:第一,在这个市场上,所有的旅游产品提供者(包括正规的和正在严打的“四黑”)都是价格接受者,只能接受市场供求决定的价格,通俗点说,这个市场上的买者和卖者都很多,没有一个买者和卖者可以影响市场价格,所以三亚旅游的价格没有最低,只有更低;第二,我们所能提供的旅游产品同质化现象严重,几乎所有的旅行社推出的三亚旅游线路和行程安排都是互相克隆,景点重复建设和短期行为几乎是旅游市场的主旋律,连省领导都要惊呼:海南哪来那么多“野人”!?因此,我们无法以产品差别形成垄断力量,正规社和黑社提供的服务没什么不同,消费者也不会因为你是一类社多付钱;第三,市场准入制度被突出重围,尽管有旅游质量保证金制度等一系列严管措施和准入资格限制,但是遍地的“四黑”早已证实这些措施和限制的不可靠和不牢靠,基本上是一道马其诺防线,这个市场基本上是可以自由地进出,比如从事旅游业务的最低配置就是一部电话两个人,随时可以实现业务转向;第四,由于现代信息传播手段和技术的飞速发展,买者和卖者所掌握的信息量都相差无几,特别是第四媒体网络的出现,使得信息公开化和迅速传播成为现实,比如在海南某个旅行社服务不佳,马上就会被相关专业网站披露。
      完全竞争市场企业完全受市场支配,因此企业被迫压低成本以适应市场供求,所以低成本和低价格势成必然。这首先就揭示了“零负团费”存在的合理性和必然性一面。我们还可以进一步这种现象出现的原因。海南旅游社产品价格的决定和其它产品一样,都是由需求和供给决定的,游客和旅游产品提供者通过市场价格竞争的博奕过程最终达成一个双方都能接受的均衡价格时,说明市场是良性发展的,如果这个均衡价格小于等于零的话,从形式上看这是市场和竞争的必然选择,但这却是一种非常严重的反常的价格背离现象,理论上这样的交易是不可能赚钱的,但是我省的旅游产品提供者还在不断前赴后继地从事这样的交易,这说明这样的交易并非无利可图,那么可以肯定的是交易风险在海南旅游社产品提供者内部之间发生了转移,同时可以肯定海南中青旅的是这种风险最后最终转嫁到了旅游产品消费者的身上。
      为了“填坑”,旅游产品提供者内部忙于转移和对外转嫁交易风险,必然会造成服务质量的下降和旅游产品的瑕疵,这样很容易造成消费者剩余为负现象。所谓消费者剩余,是指需求价格和市场价格之间的差额,而需求价格是指消费者通过对产品的主观评价后愿意为购买该产品而支付的最高价格,决定需求价格高低的因素取决于消费者对产品的满意程度(即效用)和对其它同类产品效用和价格的比较。某种产品消费者剩余越高,消费者越愿意购买该产品,反之则越不愿购买。这两年海南旅游市场旺丁不旺财,与消费者剩余降低有很大的关系。
      因此我们必须避免在我省海南中国青年旅行社市场出现消费者剩余为负的现象,否则的话海南旅游市场的比较优势就会化为乌有,机会成本就会相当高。经济学上的机会成本是指把资源用于一种用途时所放弃的另一种用途,如果任由“零负团费”现象蔓延恶化,使得整个海南的旅游资源都服从和服务于“填坑填海”,那么我敢肯定这个机会成本迟早会是会是整个海南旅游市场,到那时可就悔之晚矣。
      我对市场监管部门的一些看法
      旅游局作为海南旅游公司市场的监管部门,近年来屡受社会各界诟病。平心而论,我对旅游局是充满了同情的,对它为了救市而采取的一些措施也是表示理解。很多情形下,受限于职责和权力的法定界限,决定了它所起作用相当有限,更决定了它不可能是我省旅游市场的救世主。把所有救市的希望都寄托在它的身上,是一种不成熟的非理性的心态,实不可取。
      根据国家有关部门的评测,我省的市场化程度还是相当高的。市场化程度高,决定了市场各方的利益博奕首先是市场手段,其次才是行政和司法手段,旅游市场也不例外。在一个市场中,市场监管一方相当于体育运动中的裁判,其中立、公正的立场能否坚持,是旅游市场维持正常秩序的保证。因此我们应该清醒地认识到,在旅游市场错综复杂的关系和矛盾中,并不必然都是由旅游局调适和化解,旅游局所有的职能的行使被严格控制在法定范围内。
      有人举出旅游局部分内部人员倒卖旅游车营运许可证和海南省导游资格证的问题,借以否认旅游局设立此类准入资格许可的不合理。我在这里暂不讨论旅游局设立此类许可是否符合法律程序,但是从市场监管来讲,这种许可的设立是非常必要的,可以起到优化资源配置、引导市场良性互动的效果,避免了市场的失衡和失序。现代经济学中把供给被人为限制时所产生的额外收入称为租金,寻租就是用各种方法得到获得租金的特权,而引起租金的供给限制来自政府的权力,只要寻租的收益大于成本,寻租活动就不会消失。经济学家指出,寻租是一种获利最大的活动,这是寻租甚为普遍的原因。旅游局对一些准入资格的许可的设立,必定而且已经引发寻租,这一方面说明旅游局对旅游市场的调节乏策和监督不力,另一方面也说明我省旅游市场机制和公平自由竞争环境的不完善,还体现出大家的法治意识并不是和现代市场经济的最低要求相适应的。所以不能苛责旅游局,虽然它要对旅游市场四黑负重要责任。
      有人又要举出旅游车滚动发车的实例来证实旅游局对旅游市场的行政干预是如何不当,甚至有违法嫌疑。我其实也有同感,但是对旅游局此举还是持理解态度,当然,此举能否成功遏制黑车现象还是非常值得怀疑的,我并不看好这种行为的长线前景,同时也认为籍此培养旅游从业者的法治意识和秩序观念的效果是有限的,但起码有一点目的是达到了:初步实现了旅游市场一些生产要素的有序流动,通过行政强制干预手段重建了某些方面的公平和秩序。我个人认为,通过把旅游车集中起来滚动发车,旅游局也许有意撮合所有者能够积极向现代企业制度靠拢,组成形式多样的经济组织,将分散在个体的资源、风险和利益进行整合,形成风险共担、利益共享的良好局面,但我也只是限于猜想而已,不过我认为我这个猜想倒是可以供大家借鉴。
    [font=宋体]海南旅行社[/font] [font=宋体]海南中青旅[/font] [font=宋体]海南中国青年旅行社[/font] [font=宋体]海南旅游线路[/font] [font=宋体]海南旅游[/font] [font=宋体]海南旅游公司[/font] [font=宋体]海南旅行团[/font] [font=宋体]海南岛旅游[/font] [font=宋体]海南参团旅游[/font]

    [img=700,138]http://www.ca315.com.cn/blog/attachments/2008/04/1486_200804172058161.jpg[/img]

  2. he123 于 2007-11-18 21:54:16发表:

    北京专业硬盘数据恢复公司,提供数据恢复数据修复服务--恢复硬盘数据。本报讯地铁施工的围挡板成了小贩们展示货品的货架,本来就狭窄的人行通道被一个个地摊货架占去了近一半。国际烟花网专业的花炮交易资讯平台;最新的浏阳烟花产品,最全的烟花批发企业资料,最可靠的烟花交易信息.。需要出国留学、英国留学、法国留学、加拿大留学、日本留学、美国留学、澳大利亚留学的欧美亚教育服务中心可以提供各种帮助.中国留学行业第一旗舰品牌-澳际北京总部及上海广州南京温州兰州昆明沈阳悉尼加拿大等全球分支机构。中国从事专利行业的最权威的政府部门。