1. path
path是個系統環境變量,聲明命令的搜索路徑,讓操作系統找到指定的工具程序。
D:\Program Files\Java\jdk1.8.0_111\bin指定JDK工具路徑,例如javac,java,jmap等,如果不配置就無法運行javac等命令。
1.classpath :
指向編譯好jar包(或則其他java類包)所在的位置
classpath設置CLASSPATH變量的目的就是讓Java執行環境找到指定的Java程序對應的class文件,以及程序中引用的其他clas文件,例如:你的Java代碼依賴另一個jar包,此時就需要通過IDE,如eclipse引入jar包,此時就會在Java項目的.classpath文件中生成相應配置:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
<?xml version=
"1.0"
encoding=
"UTF-8"
?>
<classpath>
<classpathentry including=
"**/*.java"
kind=
"src"
output=
"target/classes"
path=
"src/main/java"
>
<attributes>
<attribute name=
"optional"
value=
"true"
/>
<attribute name=
"maven.pomderived"
value=
"true"
/>
</attributes>
</classpathentry>
<classpathentry kind=
"src"
path=
"src/main/resources"
/>
<classpathentry kind=
"con"
path=
"org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8"
>
<attributes>
<attribute name=
"maven.pomderived"
value=
"true"
/>
</attributes>
</classpathentry>
<classpathentry kind=
"con"
path=
"org.eclipse.m2e.MAVEN2_CLASSPATH_CONTAINER"
>
<attributes>
<attribute name=
"maven.pomderived"
value=
"true"
/>
</attributes>
</classpathentry>
<classpathentry kind=
"output"
path=
"target/classes"
/>
</classpath>
|
2.java.library.path
-cp:聲明依賴的a.jar,b.jar和libs下面所有的jar包;
-Djava.library.path:指定依賴的非Java庫文件路徑,也放在libs目錄下面;
1.動態庫所在位置,在windows中是dll文件,在linux中是so文件,不是jar包路徑
2.輸出所有動態庫所在路徑(不止是java的):System.out.println(System.getProperty('java.library.path'));
下面是一部分

java運行時就會從這些路徑下尋找動態庫
3.解決no XXX in java.library.path
即在上面列出的動態庫路徑中沒有所需的動態庫文件
1.將動態庫文件復制到上面路徑之一中
2.手動給出路徑
-Djava.library.path=動態庫文件路徑
設置完后將開發平台重啟IDEA , 切記,再運行工程
4.手動添加jar包路徑
鼠標右鍵,手動添加jar包目錄
然后在項目結構的Libraries中可以看到
這些是項目所使用的所有jar包目錄