mapgis路径设置:设置类路径
疯狂代码  CrazyCoder/        ĵ:http:/CrazyCoder/Java/Article62573.html
结构
@Q9B0nx$[3U可通过对 JDK 工具使用 -path 选项(首选思路方法)或设置 CLASSPATH 环境变量来设置类路径
.zjR%rP2|+}|-U ;  ; C:> jdkTool -path JAVA中文站社区门户}"S~u V3S|r3}
;  ; C:>  CLASSPATH=
Hd*kZ`R:P每个 path 以文件名或目录结尾该文件名或目录取决于将类路径设置成什么: JAVA中文站社区门户+PCwQ+w:q/w1ZQ_1J9s
对于包含 . 文件 .zip 或 .jar 文件路径以 .zip 或 .jar 文件名结尾
#q/e.eu;m#Q对于未命名包中 . 文件路径以包含 . 文件目录结尾 JAVA中文站社区门户;UiyUi_e W
对于已命名包中 . 文件路径以包含“root”包(完整包名中第个包)目录结尾
java设置环境变量的方法代码
;[{Z K-E__h用分号来分隔多个项目使用  命令时需要省略等号两边空格(=)其中 jdkTool 可以为 java、javac、javadoc等等有关详细列表参见 JDK 开发工具
z].A n'F6{"[&}k介绍说明JAVA中文站社区门户O.rwZ8@ ~
类路径告诉 Java 应用去哪里查第 3方和自定义类 -- 即不是 Java 扩展或 Java 平台部分类在 JDK 1.2 中JVM 和其他 JDK 工具通过依次搜索平台库、库扩展和类路径来查类(有关搜索策略详细信息参见如何查类) JAVA中文站社区门户@GC+_C*A@8J+L4{
多数应用类库都会充分利用扩展机制因此只有想要加载某个类库 (a) 未位于当前目录或其分枝包中 且 (b) 未位于扩展机制所指定位置时才需设置类路径
k^C-t;wO)jVtN如果用户是从旧版本 JDK 升级而来则启动设置可能包括不再需要 CLASSPATH 设置这时应该删除任何非应用特定设置有些使用 Java 虚拟机第 3方应用可能修改 CLASSPATH 环境变量以包括它们使用类库这种设置可以保留 JAVA中文站社区门户|P~k9BCk+s
可通过在 JVM 或其他 JDK 工具时使用 Java 工具 -path 选项改变类路径(例如: java -path ...)这是改变类路径首选思路方法还可通过使用 CLASSPATH 环境变量改变类路径
j%r5o)]9A{7D+Y2j.]3]注意:JDK 1.2 缺省类路径是当前目录设置 CLASSPATH 变量或使用 -path 命令行
开关将覆盖缺省值因而如果想要在搜索路径中包括当前目录则必须在新设置中包括“.”
i(po+q`Bg类可以存储在目录(文件夹)或归档文件(例如 es.zip 或 es.jar)中有关归档文件详细信息和类路径工作原理参见本文档最后理解类路径和包名 JAVA中文站社区门户|(~wL:V.qZ$E
; ;
!Xhh&lL;q重要介绍说明:JDK 旧版本在缺省类路径中还包括 /es 项该目录仅供 JDK 使用且不用于应用类应用类应该放置在 JDK 外部目录这样安装新 JDK 时不必需要重新安装应用库为了和旧版本兼容性使用 /es 目录作为类库应用在当前版本中仍能运行但不能保证在以后版本中它们还能运行 JAVA中文站社区门户?`2a1iX;Q!W1M` Q
使用 Java 工具 -path 选项JAVA中文站社区门户-K&t&F;sR
Java 工具 java、jdb、javac 和 javah 具有 -path 选项在工具运行时它将取代缺省类路径或由 CLASSPATH 环境变量所指定类路径这是改变类路径设置推荐思路方法这样每个应用可具有它所需类路径而又不会干扰其他应
用 JAVA中文站社区门户/w2wa0U"C
运行时工具 java 和 jdb 还具有 -cp 选项该选项是 -path 缩写
!e!Xwj2lm对于非常特殊情况java 和 javac 都具有开关使得可改变它们使用路径以查它们自己类库但是绝大多数用户从来都不会用到这些开关
!q*j9rA;X{P[
+jA"|hVTYPP使用 CLASSPATH 环境变量
7XKw*J&^}S VE如前节中所述般用户将想要使用 -path 命令行选项本节将介绍如何设置 CLASSPATH 环境变量或清除以前安装遗留下设置
`R4XiF&E设置 CLASSPATH
2Rz-c{WvC[M在 DOS 提示符下可用  命令修改 CLASSPATH 环境变量其格式为:
EH6w?Z[(Q ;  ; CLASSPATH=path1;path2 ...JAVA中文站社区门户MJvL wN-]o'~
路径应该以指定驱动器字母开头例如 C:\...这样在偶然切换到区别驱动器时仍可到类(例如如果路径项以 \... 开头并且当前位于驱动器 D: 上则所需类将在 D: 而不是 C: 驱动器上)
(k(CB k-fx清除 CLASSPATH
Yy$h&A)Q/~如果 CLASSPATH 环境变量被设置成不正确值或启动文件或脚本设置了不正确路径则可通过使用下列命令清除 CLASSPATH:
'p2UY5]3g ; ;C:>  CLASSPATH=
uTYjUTo该命令仅清除当前会话 CLASSPATH要确保在以后会话中具有正确 CLASSPATH 设置则应该删除或修改启动设置 JAVA中文站社区门户U}WN\!QYl4I
更改启动设置JAVA中文站社区门户A4y#m1T e5WQt
如果在系统启动时设置 CLASSPATH 变量则查它位置取决于所使用操作系统:
HY4]2me)J` ; ;操作系统 思路方法
P/HG!gSX(C+aNWindows 98 和 JAVA中文站社区门户hk-^7Q&]
Windows 95 检查 autoexec.bat 文件中  命令
wT ip,N@bqx._S5NWindows NT 启动“控制面板”选择“系统”单击“环境”选项卡并在“用户变量”部分中检查 CLASSPATH 变量 JAVA中文站社区门户.?ry%F)p ^
cW S+mYJ理解类路径和包名
a9b"K ot1c6ARJava 类被组织成包而这些包被映射到文件系统中目录但是和文件系统区别是无论何时指定包名都应指定完整包名 -- 永远不要仅指定它部分例如java.awt.Button 包名总是应指定为 java.awt
vAJ7{O4}4e例如假定想要 Java 运行环境在包 app 中查名为 Cool. 类如果该目录路径为
C:\java\MyClasses\utility\myapp则应该将类路径设置成包含 C:\java\MyClasses JAVA中文站社区门户]u!r ^,T/o?
要运行该应用可使用下述 JVM 命令:
s!uW2J9n| \C:> ; ;java -path C:\java\app.Cool
|;dy!O+Ph当该应用运行时JVM 使用类路径设置查在 app 包中定义任何其他类
8e@6x(N*h%y8Y_m注意:应在命令中指定完整包名例如设置类路径包含 C:\java\MyClasses\utility 并使用命令 java myapp.Cool 是不可能这不到该类
7Y@d Hx9^(您可能想知道用什么定义类包名答案是:包名是类部分并且不能修改除非重新编译该类) JAVA中文站社区门户4|B8As.N1x I5K
注意:包规范标准机制个有趣结果是属于相同包多个文件实际上可存在于区别目录中对于每个类包名都是相同但是每个文件路径可从类路径中区别目录开始
L4Te7S]文件夹和归档文件
`q/kZ"h4YJ当类存储在目录(文件夹)中时例如 c:\java\MyClasses\utility\myapp则类路径项指向包含包名第个元素目录(在这里为 C:\java\MyClasses包名是 app)
!B~v:QJt但是当类存储在归档文件(.zip 或 .jar 文件)中时类路径项则是该 .zip 或 .jar 文件路径例如要使用位于.jar 文件中类库则命令应该类似下述形式:
*~CU2MuR ;  ;java -path C:\java\MyClasses\myes.app.CoolJAVA中文站社区门户(Sg9mrl$D 多重指定
b*P Jn6z要在目录 C:\java\MyClasses 和 C:\java\OtherClasses 中查类文件则可将类路径设置为:
GU%@0{u ;  ;java -path C:\java\MyClasses;C:\java\OtherClasses ...JAVA中文站社区门户$u~zkg
注意两个路径的间用分号分隔 JAVA中文站社区门户-l{;z)~)M^_U*@
指定次序JAVA中文站社区门户jrA]&ZZ(H
指定多个类路径项次序是相当重要Java 解释器将按照目录在类路径变量中次序在各个目录中查类在上例中Java 解释器首先在目录 C:\java\MyClasses 中查需要类只有当它在该目录中没有到该类时解释器才能到C:\java\OtherClasses 目录中查 JAVA中文站社区门户 }w2c3Ps)Yh ;
#["x1U*iP8iiDm
TAG:  路径 设置
2009-2-10 11:36:30
疯狂代码 CrazyCoder/

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。