java中path和classpath

Path 路径,是java编译时需要调用的程序(如java,javac等)所在的地方;

CLASSPATH的作用是指定查找类的路径:当使用java命令执行一个类(类中的main方法)时,会从classpath中进行查找当前运行class所依赖的其它class文件。,
即CLASSPATH ->到哪里找需要执行的.class文件(程序依赖外面Jar,再细一点讲是依赖jar里面的class)。

Path
1. PATH命令可用来设置可执行文件(仅包括:.COM、.EXE及.BAT文件)的搜索路径。
当您运行一个可执行文件时,DOS会先在当前目录中搜索该文件,若找到则运行之;若找不到该文件,则根据PATH命令所设置的路径,顺序逐条地到各目录中搜索该文件;
2. PATH命令中的路径,若有两条以上,windows下各路径之间以一个分号“;”隔开,linux/unix下以":"分隔;
3、windows中默认的系统路径(Path)是C:\WINDOWS\System32\

CLASSPATH:
它是javac编译器的一个环境变量,是用来找正在运行class所依赖的class。
它的作用与import、package关键字有关。CLASSPATH有点像c\c++编译器中的INCLUDE路径的设置哦,是不是?当c\c++编译 器遇到include <iostream>这样的语句,它是如何运作的?哦,其实道理都差不多!搜索INCLUDE路径,检视文件!
当你自己开发一个package时,然后想要用这个package中的类;自然,你也得把这个package所在的目录设置到CLASSPATH中去!

CLASSPATH的设定,对JAVA的初学者而言是一件棘手的事。所以Sun让JAVA2的JDK更聪明一些。你会发现,在你安装之后,即使完全没有设定CLASSPATH,你仍然能够编译基本的JAVA程序,并且加以执行,是因为java会查找运行程序的当前目录

 

为了看看当前系统的环境变量,我们可以用如下的命令:

在Linux/Unix系统上,在shell命令符输入 env ,然后回车

在Windows系统中,在DOS窗口提示符输入 set ,然后回车

这样,我们就可以看到系统当中的所有环境变量,如果我们想看看单个变量的值呢?

在Linux/Unix系统上,在shell命令符输入 echo $变量名 ,然后回车

在Windows系统中,在DOS窗口提示符输入 set 变量 或者 echo %变量%,然后回车

如果要设置一个环境变量,可以用下面的命令:

在Linux/Unix系统上,在shell命令符输入 export 变量名="变量值" ,然后回车

在Windows系统中,在DOS窗口提示符输入 set 变量名="变量值" ,然后回车

这样,就设置好了。path和classpath环境变量的值都是一些有顺序的目录列表。告诉系统或者应用程序

到哪里去寻找它们需要的资源。这个目录列表是由一系列的分隔符分开的,Linux/Unix系统下分隔符是冒号“:”

windows系统中是分号“;”。如果,我们想在某个已经存在的环境变量值下加一些自己的值的话,可以这样:

Linux/Unix系统下: export CLASSPATH=$CLASSPATH:/path/to/program

Windows系统下: set CLASSPATH = %CLASSPATH%;c:\path\to\program

时间: 2024-05-03 18:56:51

java中path和classpath的相关文章

Java中获取类路径classpath的简单方法(推荐)_java

如下所示: <SPAN style="FONT-SIZE: 18px"> System.out.println("++++++++++++++++++++++++"); String path = System.getProperty("java.class.path"); String path2 = FreeMarkerWriter.class.getProtectionDomain().getCodeSource().getLo

java环境变量path和classpath的配置_java

在Java的学习中,涉及到两个系统环境变量path和classpath 一. path环境变量 path环境变量是系统环境变量的一种,它用于保存一系列的路径,每个路径之间用分号分隔.当在命令行窗口运行一个可执行文件时,操作系统首先会在当前目录下查找是否存在该文件,如果不存在会继续在path环境变量中定义的路径下寻找这个文件,如果仍未找到,系统会报错. 在Windows7系统下配置环境变量: 1.右击[计算机],选择[属性],出现如下界面: 图1 2.点击[高级系统设置],出现如下界面: 图2 3

Java中getResourceAsStream的用法小结

Java中getResourceAsStream的用法小结 一.Java中的getResourceAsStream主要有以下三种用法:1.Class.getResourceAsStream(String path)      path 不以'/'开头时默认是从此类所在的包下取资源,以'/'开头则是从ClassPath根下获取.     其实是通过path构造一个绝对路径,最终还是由ClassLoader获取资源. 2.Class.getClassLoader.getResourceAsStrea

dll文件-no JIntellitype in java.library.path

问题描述 no JIntellitype in java.library.path 在我的java工程中,用到了第三方jar包和dll文件,dll文件放在了工程根目录,在eclipse中运行是出现问题Caused by: java.lang.UnsatisfiedLinkError: no JIntellitype in java.library.path at java.lang.ClassLoader.loadLibrary(Unknown Source) at java.lang.Runt

java 中ClassLoader的原理

本文转载自:http://blog.csdn.net/xyang81/article/details/7292380 一.什么是ClassLoader?          大家都知道,当我们写好一个Java程序之后,不是管是CS还是BS应用,都是由若干个.class文件组织而成的一个完整的Java应用程序,当程序在运行时,即会调用该程序的一个入口函数来调用系统的相关功能,而这些功能都被封装在不同的class文件当中,所以经常要从这个class文件中要调用另外一个class文件中的方法,如果另外一

深入解析Java中的Class Loader类加载器_java

类加载的过程类加载器的主要工作就是把类文件加载到JVM中.如下图所示,其过程分为三步: 1.加载:定位要加载的类文件,并将其字节流装载到JVM中: 2.链接:给要加载的类分配最基本的内存结构保存其信息,比如属性,方法以及引用的类.在该阶段,该类还处于不可用状态: (1)验证:对加载的字节流进行验证,比如格式上的,安全方面的: (2)内存分配:为该类准备内存空间来表示其属性,方法以及引用的类: (3)解析:加载该类所引用的其它类,比如父类,实现的接口等. 3.初始化:对类变量进行赋值. 类加载器的

Java中的环境变量设置---理解

java中环境变量的设置,主要是设置设置JAVA_HOME,CLASSPATH,在path变量中增加java的bin目录.当然现在都是用工具开发,可以不设置CLASSPATH,可能会有问题,所以还是尽量设置. JAVA_HOME C:Javajdk1.6.0_30(java的安装目录,) PATH C:Javajdk1.6.0_30bin(%JAVA_HOME%lib)(不要新建path在原来的path路径上新加java到bin的路径就可以了,) CLASSPATH .;%JAVA_HOME%l

linux 部署出错:no jzmq in java.library.path

问题描述 ZeroMQ的应用开发,linux部署出现以下错误(nojzmqinjava.library.path),请高手帮忙解答,谢谢.windows上部署以及eclipse开发都没问题.linux上,zeromq相关的路径的path和LD_LIBRARY_PATH以及CLASSPATH,我都指定过,还是这个错误,很无奈....Exceptioninthread"main"java.lang.UnsatisfiedLinkError:nojzmqinjava.library.path

Java中getResourceAsStream的用法

首先,java中的getresourceasstream有以下几种: 1. class.getresourceasstream(string path) : path 不以'/'开头时默认是从此类所在的包下取资源,以'/'开头则是从 classpath根下获取.其只是通过path构造一个绝对路径,最终还是由classloader获取资源. 2. class.getclassloader.getresourceasstream(string path) :默认则是从classpath根下获取,pa