[JAVA] JAVA 类路径
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 类路径的更多相关文章
- java 获取类路径
package com.jason.test; import java.io.File; import java.io.IOException; import java.net.URL; public ...
- java获取类路径下文件的绝对路径
获取文件绝对路径 在idea中,默认的当前路径是project的根路径,如果你使用idea的默认路径,只要离开idea换到其他位置,可能当前路径就不是project的根路径了. 使用一下通用方式的前提 ...
- Java获取类路径的方式
Java环境中,如何获取当前类的路径.如何获取项目根路径等: @Test public void showURL() throws IOException { // 第一种:获取类加载的根路径 Fil ...
- java获取类路径
String file = MessageTask3.class.getResource("").getFile(); File: public static final Stri ...
- 《Java从入门到失业》第四章:类和对象(4.6):类路径
4.6类路径 4.6.1什么是类路径 前面我们讨论过包,知道字节码文件最终都会被放到和包名相匹配的树状结构子目录中.例如上一节的例子: 其实类还有一种存放方式,就是可以归档到一个jar文件中,jar文 ...
- jdbc java数据库连接 6)类路径读取——JdbcUtil的配置文件
之前的代码中,以下代码很多时候并不是固定的: private static String url = "jdbc:mysql://localhost:3306/day1029?useUnic ...
- Java类路径
Java 类路径告诉 java 解释器和 javac 编译器去哪里找它们要执行或导入的类. 类(您可能注意到的那些 *.class 文件)可以存储在目录或 jar 文件中,或者存储在两者的组合中, 但 ...
- java类路径classpath和包
*/ .hljs { display: block; overflow-x: auto; padding: 0.5em; color: #333; background: #f8f8f8; } .hl ...
- java类路径classpath
java编译器编译.java文件和java虚拟机执行.class文件时的路径和写法不一样. 在没有设置任何classpath环境变量的情况下,javac可以编译全路径的.java文件.例如: java ...
- java相对路径、绝对路径及类路径
import java.io.File; import java.net.URL; /** * java相对路径.绝对路径及类路径的测试 */ public class Test { /** * 测试 ...
随机推荐
- os.path.isdir(path)异常
Window 10家庭中文版,Python 3.6.4, 当一个路径以多个斜杠(/)或反斜杠字符(\\)结尾时,os.path.isdir(path)函数仍然将它们判断为目录: >>> ...
- 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数据 ...
- go 切片的 插入、删除
package main import ( "fmt" ) func InsertSpringSliceCopy(slice, insertion []string, index ...
- python基础--json,pickle和shelve模块
一.JSON &pickle 用于序列化的两个模块 json,用于字符串 和 python数据类型间进行转换 字符串必须是双引号,不能是单引号 pickle,用于python特有的类型 和 ...
- json字符串与java对象的相互转换(jackson)
1.java对象转换为json字符串 package com.chichung.json; import com.fasterxml.jackson.core.JsonProcessingExcept ...
- java 多线程总结篇3之——生命周期和线程同步
一.生命周期 线程的生命周期全在一张图中,理解此图是基本: 线程状态图 一.新建和就绪状态 当程序使用new关键字创建了一个线程之后,该线程就处于新建状态,此时它和其他的Java对象一样,仅仅由Jav ...
- MySQL学习笔记:delete
使用 SQL 的 DELETE FROM 命令来删除 MySQL 数据表中的记录. 语法: DELETE FROM table_name [WHERE Clause] 如果没有指定 WHERE 子句, ...
- 二进制方式部署Kubernetes 1.6.0集群(开启TLS)
本节内容: Kubernetes简介 环境信息 创建TLS加密通信的证书和密钥 下载和配置 kubectl(kubecontrol) 命令行工具 创建 kubeconfig 文件 创建高可用 etcd ...
- (使用通过混淆+自己第三方保留成功混淆)AndroidStudio 混淆打包
原文:https://blog.csdn.net/mazhidong/article/details/64820838 AndroidStudio中的项目可以用compile的形式引入github上的 ...
- 【AtCoder】ARC096(C - F)
听说日本题思维都很棒,去涨涨智商qwq C - Half and Half 题解 枚举买多少个AB披萨也行 但是关于买x个AB披萨最后的总花费是个单峰函数,可以三分 这题有点像六省联考2017D1T1 ...