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. nginx php mysql日志配置

    1.编辑mysql的配置文件my.cnf,这个文件通常在/etc目录下,但我用rpm装mysql的时候这个配置文件是在/usr目录下,但我测试过,无论是放在/etc目录下,还是放在     /usr目 ...

  2. python_接口自动化测试框架

    本文总结分享介绍接口测试框架开发,环境使用python3+selenium3+unittest+ddt+requests测试框架及ddt数据驱动,采用Excel管理测试用例等集成测试数据功能,以及使用 ...

  3. lambda表达式与bind函数

    #include<iostream> #include<algorithm> #include<sstream> #include<vector> #i ...

  4. MST最小生成树

    首先,贴上一个很好的讲解贴: http://www.wutianqi.com/?p=3012 HDOJ 1233 还是畅通工程 http://acm.hdu.edu.cn/showproblem.ph ...

  5. BFC 从了解到放弃

    最近工作中我突然产生了一个想法,就如我们人类面临的终极问题一般,我从哪里来?我到哪里去?在撸代码进行CSS布局的时候,我会去想,我为什么这么做?,为什么浮动的元素要用overflow?,为什么要用cl ...

  6. JavaScript中的数据结构及实战系列

    本系列主要是讲解JavaScript中的数据结构及在实际项目中遇到的地方 JavaScript中的数据结构及实战系列(1):队列 JavaScript中的数据结构及实战系列(2):栈

  7. linux 101 hacks 7crontab

    技巧 74: crontab 书上的这一段我删了,重写一下,用的是ubuntu 16.04系统 参考 每天一个 linux 命令(50):crontab 命令 crond 服务 安装 crontab: ...

  8. python开发学习-day14(jquery、ajax等)

    s12-20160421-day14 *:first-child { margin-top: 0 !important; } body>*:last-child { margin-bottom: ...

  9. mysql find_in_set函数详解

    Mysql函数FIND_IN_SET()的使用方法 有了FIND_IN_SET这个函数.我们可以设计一个如:一只手机即是智能机,又是Andriod系统的. 比如:有个产品表里有一个type字段,他存储 ...

  10. java 策略设计模式

    在软件开发中也常常遇到类似的情况,实现某一个功能有多种算法或者策略,我们可以根据环境或者条件的不同选择不同的算法或者策略来完成该功能.如查找.排序等,一种常用的方法是硬编码(Hard Coding)在 ...