总结下classpath
以一个简单的java类开始,要点
(1)javac
(2)java -cp
(3)用户自定义类加载次序
(一)java source code
package cn.smartjava.test;
public class Client {
public static void main(String[] args) throws Exception {
System.out.println("package cn.smartjava.test;");
}
}
保存至目录:E:\cptest\cn\smartjava\test\Client.java
(二)compile
> javac E:\cptest\cn\smartjava\test\Client.java
编译的时候,源代码可以放在任何目录,不一定非要按照package中指定的目录层次放置。javac会将class文件生成到java文件所在目录
(三)run
运行时,必须将class文件按source code中package指定的文件层次放置好。编译完成,目录结构为:
E:\cptest\cn\smartjava\test\Client.class
package部分的相对目录内容cn\smartjava\test\Client.class可以随意移动,测试起见,我们将其copy到D:\newcptest下,现在class文件位置为:
D:\newcptest\cn\smartjava\test\Client.class
两种运行方式:
(1)不指定classpath
> cd D:\newcptest
> java cn.smartjava.test.Hello
(2)显式指定classpath
> cd 任何路径
> java -cp d:\newcptest cn.smartjava.test.Hello
实际上第一种方式采用的默认classpath(-cp .)
用户自定义类的加载顺序:
引用
1. 默认的user classes .就是指当前目录。
2. 系统变量classpath所指定的类库,该变量覆盖默认的user classes.
3. 用命令行参数 -cp 或 -classpath指定的类库。这个时候覆盖默认的user classes 和classpath变量。
4. 通过-jar 参数指定的jar文件。此时覆盖上面的三种情况,如果使用这种情况,所有的类文件必须来自指定的jar 文件。
================================================
参考:
(1)
http://www.blogjava.net/macinter/archive/2006/10/19/76099.html
分享到:
相关推荐
Spring 配置中的classpath:与classpath*:的区别 Spring 配置中的classpath:与classpath*:的区别是 Spring 框架中一个常见的问题。本文主要介绍了这两种路径的区别、使用场景及注意事项,以帮助读者更好地理解和使用...
### Java中的Path与Classpath设置详解 在Java开发过程中,正确配置环境变量是十分重要的一步。其中,`path`和`classpath`是最为关键的两个环境变量,它们直接影响到Java程序能否正常编译和运行。 #### 一、Path 的...
在Java编程环境中,`Classpath`(类路径)是一个至关重要的概念,它是Java虚拟机(JVM)查找和加载.class文件的路径。当我们在开发和运行Java程序时,正确配置Classpath是确保程序能正常运行的关键步骤。这篇文档将...
2. **设置`classpath`**:你可以通过`-cp`或`-classpath`命令行选项来设置`classpath`,或者在`JAVA_HOME/bin`目录下的`java.exe`启动脚本中修改`CLASSPATH`环境变量。 3. **路径分隔符**:在Windows上,路径之间...
Java的classpath是每个Java开发者都必须了解的关键概念,它决定了JVM(Java虚拟机)在执行Java程序时如何查找和加载所需的类文件。本文将深入探讨classpath的基本原理、配置方式以及如何确保`javac`正确编译运行Java...
Java 环境配置与设置 JAVA_HOME, CLASSPATH, PATH 的目的 Java 环境配置是 Java 开发的基础,我们需要正确地配置 JAVA_HOME, CLASSPATH, PATH 等环境变量,以便正确地编译和运行 Java 程序。在本节中,我们将详细地...
IKVM.GNU.Classpath是一个专为.NET Framework设计的开源项目,它使得Java应用程序可以在.NET平台上运行。这个项目的核心是IKVM.NET,一个实现了Java虚拟机(JVM)和大部分Java核心类库的.NET版本。IKVM这个名字是...
path与classpath的区别 path与classpath是Java开发中两个常见的概念,但它们之间的区别却经常被混淆。下面,我们将详细介绍path和classpath的作用、区别以及它们在Java开发中的应用。 path的作用 path是系统用来...
在Java编程环境中,路径(Path)和类路径(Classpath)是两个至关重要的概念,它们对程序的编译和运行起着决定性的作用。本文将深入解析这两个概念,并结合源码和工具,帮助你理解它们的工作原理。 首先,让我们来...
### Java的Classpath详解及其重要性 在Java编程的学习与实践中,环境配置是入门的关键步骤之一,其中最为棘手的问题之一便是如何正确设置`classpath`。`classpath`不仅影响着程序能否正常编译和运行,还关系到...
Java中的ClassPath和Package是Java开发中至关重要的概念,它们直接影响到Java程序的编译和运行。在这篇文章中,我们将详细探讨这两个主题。 首先,让我们理解什么是ClassPath。ClassPath是Java虚拟机(JVM)查找类...
在编程世界中,Java是一种广泛使用的跨平台语言,它的运行依赖于类路径(Classpath),这是一个指示Java虚拟机(JVM)查找.class文件的环境变量。本文将详细讲解如何在Linux和Windows操作系统下动态设置classpath以...
### Java Classpath 配置详解 #### 一、前言 对于初学Java的朋友而言,配置Java环境常常是一项艰巨的任务,尤其是如何正确设置`classpath`。这篇文章将通过一系列实际操作来详细阐述`classpath`的配置过程,帮助...
"eclipse工程中.classpath文件的含义" .classpath文件是Eclipse中一个非常重要的配置文件,它记录了项目的类路径信息,包括源代码目录、库文件路径、编译器设置等信息。下面我们将详细解释.classpath文件中的各个...
### jdk的classpath路径和环境配置 在Java开发过程中,正确配置JDK(Java Development Kit)的环境变量是非常重要的步骤之一。它不仅关乎到开发工具能否正常运行Java程序,还直接影响到开发效率与项目的顺利进行。...
在IT行业中,尤其是在Java开发中,管理类路径(CLASSPATH)是至关重要的。"一个自动生成CLASSPATH字符串的脚本" 提供了一种自动化的方法来处理这个常见的编程任务,尤其适用于复杂的项目结构或多模块项目。这篇博客...
标题中的“Spring2.5 自动扫描classpath”指的是Spring框架在2.5版本中引入的一项功能,即自动组件扫描(Auto-Component Scanning)。这项功能允许开发者无需在XML配置文件中显式声明bean,而是通过在类上添加特定...
Java语言的classpath环境变量是Java开发和运行过程中不可或缺的一个配置项。它定义了Java虚拟机(JVM)在执行程序时查找类文件的路径,确保JVM能够找到所需的类库和资源。理解并正确设置classpath对于Java开发者至关...
Java命令行classpath(类路径)的设置是Java开发过程中的一项基础操作,对于理解和运行Java程序至关重要。类路径是指定Java虚拟机(JVM)在执行Java程序时查找类文件的位置。正确配置类路径能确保JVM能够找到并加载...
标题 "Drools报错: The Eclipse JDT Core jar is not in the classpath" 提示了一个常见的编程问题,即在使用Drools规则引擎时,由于缺少Eclipse JDT(Java Development Tools)核心库,导致运行错误。这个问题涉及...