Java 类路径

类路径是所有包含类文件的路径的集合。

类路径中的目录和归档文件是搜寻类的起始点。

虚拟机搜寻类

  • 搜寻jre/lib和jre/lib/ext目录中归档文件中所存放的系统类文件
  • 搜寻再从搜寻类路径

测试搜寻类

Person.java 源文件

public class Person
{
private String name; public Person(String name)
{
this.name = name;
} public void PrintName()
{
System.out.println("Name is:" + name);
}
}

Welcome.java 源文件

/**
* This program dispalys Hello World
* @version 1.0
* @author ABeen
* */ public class Welcome
{
public static void main(String[] args)
{
String greeting = "Hello World!";
System.out.println(greeting); String name = "ABeen";
Person e = new Person(name);
e.PrintName();
}
}

测试执行

在源码所在目录执行

mac-abeen:java abeen$ javac Welcome.java  编译正常
mac-abeen:java abeen$ java Welcome 执行正常
Hello World!
Name is:ABeen
mac-abeen:java abeen$

在非源码目录执行

编译代码

//未设置类路径,编译时找不到引用的源文件
mac-abeen:alearn abeen$ javac ./java/Welcome.java
./java/Welcome.java:16: 错误: 找不到符号
Person e = new Person(name);
^
符号: 类 Person
位置: 类 Welcome
./java/Welcome.java:16: 错误: 找不到符号
Person e = new Person(name);
^
符号: 类 Person
位置: 类 Welcome
2 个错误 //设置类路径
mac-abeen:alearn abeen$ javac -cp ./java ./java/Welcome.java

执行代码

//未设置类路径
mac-abeen:alearn abeen$ java ./java/Welcome
错误: 找不到或无法加载主类 ..java.Welcome
原因: java.lang.ClassNotFoundException: //java/Welcome //设置类路径
mac-abeen:alearn abeen$ java --class-path=/Users/abeen/abeen/alearn/java Welcome
Hello World!
Name is:ABeen

[JAVA] JAVA 类路径的更多相关文章

  1. java 获取类路径

    package com.jason.test; import java.io.File; import java.io.IOException; import java.net.URL; public ...

  2. java获取类路径下文件的绝对路径

    获取文件绝对路径 在idea中,默认的当前路径是project的根路径,如果你使用idea的默认路径,只要离开idea换到其他位置,可能当前路径就不是project的根路径了. 使用一下通用方式的前提 ...

  3. Java获取类路径的方式

    Java环境中,如何获取当前类的路径.如何获取项目根路径等: @Test public void showURL() throws IOException { // 第一种:获取类加载的根路径 Fil ...

  4. java获取类路径

    String file = MessageTask3.class.getResource("").getFile(); File: public static final Stri ...

  5. 《Java从入门到失业》第四章:类和对象(4.6):类路径

    4.6类路径 4.6.1什么是类路径 前面我们讨论过包,知道字节码文件最终都会被放到和包名相匹配的树状结构子目录中.例如上一节的例子: 其实类还有一种存放方式,就是可以归档到一个jar文件中,jar文 ...

  6. jdbc java数据库连接 6)类路径读取——JdbcUtil的配置文件

    之前的代码中,以下代码很多时候并不是固定的: private static String url = "jdbc:mysql://localhost:3306/day1029?useUnic ...

  7. Java类路径

    Java 类路径告诉 java 解释器和 javac 编译器去哪里找它们要执行或导入的类. 类(您可能注意到的那些 *.class 文件)可以存储在目录或 jar 文件中,或者存储在两者的组合中, 但 ...

  8. java类路径classpath和包

    */ .hljs { display: block; overflow-x: auto; padding: 0.5em; color: #333; background: #f8f8f8; } .hl ...

  9. java类路径classpath

    java编译器编译.java文件和java虚拟机执行.class文件时的路径和写法不一样. 在没有设置任何classpath环境变量的情况下,javac可以编译全路径的.java文件.例如: java ...

  10. java相对路径、绝对路径及类路径

    import java.io.File; import java.net.URL; /** * java相对路径.绝对路径及类路径的测试 */ public class Test { /** * 测试 ...

随机推荐

  1. os.path.isdir(path)异常

    Window 10家庭中文版,Python 3.6.4, 当一个路径以多个斜杠(/)或反斜杠字符(\\)结尾时,os.path.isdir(path)函数仍然将它们判断为目录: >>> ...

  2. Python访问MySQL(1):初步使用PyMySQL包

    Windows 10家庭中文版,MySQL 5.7.20 for Win 64,Python 3.6.4,PyMySQL 0.8.1,2018-05-08 ---- 使用Python访问MySQL数据 ...

  3. go 切片的 插入、删除

    package main import ( "fmt" ) func InsertSpringSliceCopy(slice, insertion []string, index ...

  4. python基础--json,pickle和shelve模块

    一.JSON &pickle 用于序列化的两个模块 json,用于字符串 和 python数据类型间进行转换  字符串必须是双引号,不能是单引号 pickle,用于python特有的类型 和 ...

  5. json字符串与java对象的相互转换(jackson)

    1.java对象转换为json字符串 package com.chichung.json; import com.fasterxml.jackson.core.JsonProcessingExcept ...

  6. java 多线程总结篇3之——生命周期和线程同步

    一.生命周期 线程的生命周期全在一张图中,理解此图是基本: 线程状态图 一.新建和就绪状态 当程序使用new关键字创建了一个线程之后,该线程就处于新建状态,此时它和其他的Java对象一样,仅仅由Jav ...

  7. MySQL学习笔记:delete

    使用 SQL 的 DELETE FROM 命令来删除 MySQL 数据表中的记录. 语法: DELETE FROM table_name [WHERE Clause] 如果没有指定 WHERE 子句, ...

  8. 二进制方式部署Kubernetes 1.6.0集群(开启TLS)

    本节内容: Kubernetes简介 环境信息 创建TLS加密通信的证书和密钥 下载和配置 kubectl(kubecontrol) 命令行工具 创建 kubeconfig 文件 创建高可用 etcd ...

  9. (使用通过混淆+自己第三方保留成功混淆)AndroidStudio 混淆打包

    原文:https://blog.csdn.net/mazhidong/article/details/64820838 AndroidStudio中的项目可以用compile的形式引入github上的 ...

  10. 【AtCoder】ARC096(C - F)

    听说日本题思维都很棒,去涨涨智商qwq C - Half and Half 题解 枚举买多少个AB披萨也行 但是关于买x个AB披萨最后的总花费是个单峰函数,可以三分 这题有点像六省联考2017D1T1 ...