`

java: lib & classpath

    博客分类:
  • J2SE
阅读更多

classpath, is the path to search for third-part or user-defined classes,

refer to:
* linux
    docs.oracle.com/javase/6/docs/technotes/tools/solaris/classpath.html
    docs.oracle.com/javase/6/docs/technotes/guides/extensions/extensions.html
    docs.oracle.com/javase/7/docs/technotes/tools/solaris/jdkfiles.html
* windows
    docs.oracle.com/javase/6/docs/technotes/tools/windows/classpath.html
*

------
3 level of jars

include:
* java platform classes (bootstrap)
    location:
        jre_home/lib/
            rt.jar
            ..
    this will be searched automatically, load by bootstrap classloader,
* java extension
    location:
        jre_home/lib/ext/
    this will be searched automatically, load by extension classloader,
* third-party & user-defined
    this need to specify in classpath, load by system classloader,
*

search order:
    java platform classes -> java extension -> third-party & user-defined,

------
set classpath

2 ways to set:
* set CLASSPATH environment
* use -cp option
*

default value:
    classpath default to current dir,

override:
    both of them will override the default classpath,
    so add "." to include current dir, and add "$CLASSPATH" as prefix to include the original classpath,

search order:
    the search order of classpath, is the same as you specified in classpath,

------
classpath format

format:
    linux:
        path_1:path_2:..:path_N
    windows:
        path_1;path_2;..;path_N

path:
    each path could be jar/zip/dir, '.' means current path,
    the dir or root dir included by jar/zip, should include:
    * the top package folder, if class has package
    * .class file, if class has no package

wildcard:
    '*', used it at end of a path, after separator '/', it equals to include all files with extension '.jar' or '.JAR' in that folder,
    '*' can't be used in other format,
    e.g.
        # this will include all jars under "/tmp/lib"
        "/tmp/lib/*"

------
tools.jar & dt.jar

under jdk_home/lib, there are some jars, they are not part of java platform, but are useful tools,
if want to use them, need to include in classpath,

jars:
* tools.bar
    non-core classes for support of the tools and utilities in the JDK
* dt.jar
     the DesignTime archive of BeanInfo files that tell IDE how to display the Java components and how to let the developer customize them for an application,
*

------
e.g.

* config classpath - linux - eric.sh
    CLASSPATH=.:$JAVA_HOME/lib/*
* execute command by add additional path to configured classpath - linux
    java -cp $CLASSPATH:/mnt/star/workspace/java_workplace hello.Test
*
* set classpath via command temporary - linux shell
    # include a single jar, base on original classpath,
    export CLASSPATH=$CLASSPATH:/tmp/test.jar
    # include all jars under specified folder, base on original classpath,
    export CLASSPATH=$CLASSPATH:/tmp/lucene_demo/lib/*
*

------

分享到:
评论

相关推荐

    java环境变量配置 JDK环境变量

    JAVA_HOME:C:\Program ... 5.JAVA_HOME指明JDK安装路径,就是刚才安装时所选择的路径D:\java\jdk1.5.0_08,此路径下包括lib,bin,jre等文件夹(此变量最好设置,因为以后运行tomcat,eclipse等都需要依*此变量);

    java-7-openjdk-amd64

    CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar export JAVA_HOME export PATH export CLASSPATH $ java -version java version "1.7.0_121" OpenJDK Runtime Environment (IcedTea 2.6.8) (7u121-...

    java classpath 批量设置脚本

    linux bash: YOUR_LIB=your_path for jar in `ls $YOUR_LIB/*.jar` do CLASSPATH="$CLASSPATH:""$jar" ... FOR %%C IN (LIB\*.jar) DO set CLASSPATH=!CLASSPATH!;%%C echo %CLASSPATH%

    JDK-8u151 for linux x64

    JDK-8u151的Linux 64位版本,使用方法: ...CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar export JAVA_HOME export PATH export CLASSPATH 注意修改下JAVA_HOME路径 3.source ~/.bashrc

    JAVA8_WINXP

    java8_winxp:解压后,直接修改环境变量4、配置... %JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar; (3)配置PATH: 添加变量值: %JAVA_HOME%\bin %JAVA_HOME%\jre\bin 路径名根据解压路径修改

    java jdk8 双系统安装包 Windows & liunx

    export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib:$CLASSPATH export PATH=$JAVA_HOME/bin:$PATH windows 配置 计算机-->高级选项-->配置环境变量--->配置JAVA_HOME filePath:...

    Launcher java启动器

    classpath指定Class-Path路径,可以多个,用:分割,如:classes libraries指定jar包所在目录,可以多个,用:分割如:lib jar存在多个目录时,如 lib:mylib1:mylib2 3、运行launcher.bat启动java程序

    p2p:操作系统3的项目1-2015年9月12日

    java -classpath ../lib/jade.jar:. jade.Boot -container distribuidor:Nodo 运行特定文件的文件请求器: java -classpath ../lib/jade.jar:. jade.Boot -container 'solicitante:Nodo(ejemplo1.txt)' 运行文件...

    java环境变量一键设置

    Java环境变量配置 ...%JAVA_HOME%\lib;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar (4)编辑->变量名:JAVA_HOME,变量值:D:\Java\jdk1.6.0_10 注意:当设置的变量在末尾时,不要加上“;”。

    java txt 笔记.rar

    CLASSPATH=.:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar PATH=$PATH:$JAVA_HOME/bin:. export JAVA_HOME CLASSPATH PATH (将指定的环境变量声明为全局的) windows系统: 右击我的电脑-->属性-->...

    java8和17的windows、linux版本

    1.windows 安装 新建JAVA_HOME,变量名:JAVA_HOME;...CLASS_PATH=:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib/dt.jar export JAVA_HOME JRE_HOME PATH CLASSPATH :wq! source /etc/profile

    Java 打包工具Ant apache组织版本1.10.1-bin.tar.gz

    export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar 方法二:修改/etc/profile文件(该方法一劳永逸,设置一次,对所有用户有效) 在/etc/profile文件末尾增加 export JAVA_HOME=/usr/share/jdk...

    jdk1.8.0_333.x86_64-linux

    linux(x86_64)下的jdk压缩包,版本为 1.8.0_333。附带安装教程。 1、将jdk压缩包解压到指定目录(如:/usr/local/java)...export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib export PATH=${JAVA_HOME}/bin:$PATH

    SAPJCO3连接配置(sapjco3-linux_x64-3.0.10)

    CLASSPATH=$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/sapjco3.jar LD_LIBRARY_PATH=dir:$LD_LIBRARY_PATH:$JAVA_HOME/jre/lib/amd64/server export CLASSPATH LD_LIBRARY_PATH PATH

    java10的完整压缩包,不是exe执行文件,解压完配置环境直接可以跑java代码,内置简易教程,保证没有问题

    自己提取的压缩包 jdk 内有配置文档及图片照着文档配置即可成功。...%JAVA_HOME%\lib\tools.jar(注意前面的.;不能丢) 第三步:编辑Path变量 在系统变量栏找到Path,点击编辑,在变量值的最后面添加 ;%JAVA_HOME%\bin

    jdk1.8.131

    classpath:.,C:\Program Files\Java\jdk1.8.0_131jre\lib\rt.jar,C:\Program Files\Java\jdk1.8.0_131\lib\tools.jar PATH:C:\Program Files\Java\jdk1.8.0_131\bin;C:\Program Files\Java\jdk1.8.0_131\jre\bin

    java技术文档,非常实用

    %MEM_ARGS% %JAVA_OPTIONS% -Dfile.encoding=GB2312 -Dweblogic.Name=%SERVER_NAME% -Dweblogic.ProductionModeEnabled=%PRODUCTION_MODE% -Djava.awt.headless=true -Djava.security.policy="%WL_HOME%\server\lib\...

    java开发环境配置大全

     Java_HOME: D:\jdk1.5.0  PATH: D:\jdk1.5.0\bin;  CLASSPATH: .;D:\jdk1.5.0\lib\tools.jar; D:\Sun\SDK\jdk\lib;D:\jdk1.5.0\jre\lib\rt.jar;  说明:classpath最前面的”.”是表示在当前目录搜所类.  安装...

    java14的完整压缩包,不是exe执行文件,解压完配置环境直接可以跑java代码,内置简易教程,保证没有问题

    %JAVA_HOME%\lib\tools.jar(注意前面的.;不能丢) 第三步:编辑Path变量 在系统变量栏找到Path,点击编辑,在变量值的最后面添加 ;%JAVA_HOME%\bin(注意与前面用分号分割) 第四步: 在DOS命令行窗口输入"java -...

    水晶报表CrystalReport2008使用JDBC连接MySQL数据库-详细步骤.doc

    <Classpath>C:\Program Files\Business Objects\Common\4.0\java/lib/external/mysql-connector-java-5.1.22-bin.jar; C:\Program Files\Business Objects\Common\4.0\java/lib/crlovmanifest.jar; C:\Program Files...

Global site tag (gtag.js) - Google Analytics