设置类路径

【Java】classpath的理解及其使用方式 笔者之前对于classpath都没有什么深入的研究,之前的项目打包jar包都是按照网上的教程自己照着葫芦画瓢。但是因为最近碰到一些关于这方面的知识,因此索性觉得要好好补充一下这方面的知识。下面的文章主要是翻译自oralce官网关于设置classpath的说明Setting the class path,并对其中一些地方进行了部分的补充说明,方便读者理解。概要classpath是Java运行时环境搜索 阅读详情
<script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script> 结构 可通过对 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 目录中查找。
如何正确设置Java环境变量classpath 在Java编程中,classpath是一个非常重要的环境变量,它指定了Java虚拟机(JVM)在运行时查找类文件的路径。在设置classpath之前,首先需要确定您的类文件所在的位置。通常,Java类文件位于所谓的"类路径"上,这是一个包含类文件的目录或JAR文件的集合。上述命令将把"/path/to/classes"添加到classpath中,以便JVM可以找到"MyApp"类的定义。在运行Java程序时,可以使用命令行参数"-classpath"或简写的"-cp"来指定classpath。 阅读详情

相关推荐

Java中的classpath——探索类路径的奥秘

本文深入探讨了Java中的类路径(classpath)的概念和使用方法。通过正确配置和管理类路径,我们可以确保Java应用程序能够顺利加载所需的类和资源,提高开发效率和程序性能。合理设置类路径可以确保应用程序能够正确加载所需的类和资源文件,提高开发效率和程序性能。类路径是一组目录和JAR文件的集合,JVM在加载类时会搜索其中的文件。用户类路径(User Classpath):这是开发人员自定义的类路径,包括应用程序的类和资源文件。类路径可以在运行时进行修改,但可能会导致类加载方面的问题,因此需要谨慎使用。

PixelCoder的博客 632

classpath详解

设置类路径结构可通过对 JDK 工具使用 -classpath 选项(首选方法)或设置 CLASSPATH 环境变量来设置类路径。     C:> jdkTool -classpath path1;path2...    C:> set CLASSPATH=path1;path2...每个 path 以文件名或目录结尾,该文件名或目录取决于将类路径设置成什么: 对于包含 .class 文件的 .z

wxyxl的专栏 2169

Matlab实战:用DQN算法让机器人学会自主避障(附完整代码)

本文详细介绍了如何使用Matlab实现DQN(深度Q网络)算法,使机器人在复杂环境中学会自主避障。通过环境建模、网络架构设计、奖励函数优化及实战调试,提供了完整的代码实现和训练策略,帮助开发者快速应用于机器人路径规划项目。

t8u9v0w1x的博客 234

JAVA-classpath理解和使用(classpath: classpath*:)

classpath是java运行时环境搜索类和其他资源文件(比如jar\zip等资源)的路径。 classpath介绍、理解、使用。

Cx的博客 2135

unity 腾讯地图sdk移动和缩放代码

unity 腾讯地图sdk 实现移动端 缩放 和 移动

。。。。。 1283

基于毫米波雷达的智能风扇算法设计与实现

摘要:本文设计了一种基于毫米波雷达的智能风扇控制系统,采用FMCW雷达实现人体目标的精准检测与定位。系统通过距离FFT、速度FFT、CFAR检测和AoA估计构建完整的信号处理链路,并针对风扇叶片干扰设计了基于自相关函数的抗干扰算法。创新性地提出了人在开机、多人优先送风、摇头追踪等控制策略。研究采用MATLAB完成全链路算法仿真验证,并在STM32平台上实现实物系统。实验表明,该系统可实现0.15m测距精度和±60°方位角覆盖,有效解决了传统风扇的能源浪费和用户体验问题。本文提供了完整的MATLAB仿真代码和

huanghm88的专栏 404

什么是类路径,该如何设置?

I was just reading this line: 我只是在读这行: The first thing the format() method does is load a Veloc

CHCH998的博客 2348

道威棱镜的设计参考

道威棱镜的设计参考

weixin_72050316的博客 383

如何在 Java 中设置CLASSPATH类路径

环境变量,请在您的机器中找到用户环境变量的位置并添加存储Jar文件的所有路径。如果您的CLASSPATH环境变量设置为不正确的值,那么您可以取消设置CLASSPATH并为其指定空值。作为最佳实践,始终将所有JAR文件和应用程序类组织在一个根文件夹中。为了加载包含在子目录中的文件,必须在CLASSPATH中明确列出这些目录和/或文件。当您设置了应用程序运行时始终需要的jar文件的位置后,最好将它们添加到机器的环境变量。很多时候,您可能还需要在类路径中添加单独的类。...

allway2的博客 1万+

20、Citrix 云桌面常见VDA注册问题汇总

本文总结了与 VDA 中出现的 VDA 会话断开连接、注册、会话卡住以及挂起/崩溃相关的主要支持文章。

我在Citrix、VMware、Veeam、微软和NVIDIA等领域拥有丰富经验的专业人士,专注于设计和维护虚拟化基础设施、实施备份与灾难恢复策略,致力于优化企业的IT环境。 945

[xboard-real6410]39 real6410中的BL1和BL2实验及流程分析

文章目录uboot控制uboot 流程uboot加载kernel uboot控制 uboot 流程 uboot加载kernel

鹰之翔 298

java设置类路径_Java 什么是类路径,该如何设置?

小编典典使用Java进行编程时,可以通过在源文件的顶部放置类似的代码来使其他类对正在编写的类可用:import org.javaguy.coolframework.MyClass;或者有时你通过说“批量导入”内容:import org.javaguy.coolframework.*;因此,稍后在你的程序中你说:MyClass mine = new MyClass();Java虚拟机将知道在哪里可以...

weixin_42352453的博客 1501

英飞凌Tricore问题排查01_Det/Reset/Trap排查宝典

软件跑飞进Det或发生Reset或进Trap了,怎么查?有固定套路可以follow吗?英飞凌Tricore又有哪些专门的定位办法?本篇为您娓娓道来。

initiallizer的博客 4417

java编译与类路径设置(一)

java 类路径设置 javac设置

lamp专栏 2887

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

java命令行下如何设置classpath类路径

转  http://blog.youkuaiyun.com/bluishglc/article/details/9972951   以往基于构建工具和IDE工作,很少使用命令行执行程序,但偶尔使用命令行的时候关于类路径的设置都要查阅一下说明文档,这里找到一个详尽清晰的说明,以备自查.特别指明的是:classpath最好使用""(window系统下)或''(linux系统下)括起来,否则可能会因为包含的

3381

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

java类路径定制_设置Java类路径的注意事项

现在有一个JAVA项目,项目结构如图1所示。类Main依赖Log4J和Mysql-Connector包,“Base.java”文件只是最简单的类定义,“Main.java”文件内容如下:package com.dslztx.java;import org.apache.log4j.Logger;public class Main extends Base {private static final...

weixin_33205138的博客 396

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

上一篇: 网络开发应用JAVA EJB开发中间件(weblogic oracle ejb)
下一篇: 关于如何jar的一点总结
java169
博客等级 码龄19年 27粉丝 2568原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值