java基礎--Jar包添加到build path方式說明--01

前言:這段短文是根據工作實踐結合自己的理解寫的,有不對的地方懇請指出,QQ:380275672.

在eclips裏在工程名上右鍵->build path->contigure bud path->java build path裏有個

libraries->add external jars

add jars

add library

add class folder

這些按鈕都是做什麼用的

 

分類解釋這些選項的意思:

add external jars  = 增加工程外部的包
add jars = 增加工程內包
add library = 增加一個庫
add class folder = 增加一個類文件夾
 
 
下面着重介紹add library中的User Libraries

添加User Library,具體做法如下:

1. 選中工程右鍵->build path->Add Libraries...

2. 選擇User Library->next

3. 點擊User Library按鈕

4. 點擊new按鈕

5. 輸入Library name(我要導入的是struts 2.1.6的jar包和jdbc的jar包,爲了方便記憶,就可以用如Struts 2.1.6 Library)

6.點擊ok

7.選中該user library, 然後點擊add jars

8.找到對應jar包,依次確定即可。

 

User Liberary加到Eclipse中,只是eclipse中生效,就是隻有Eclipse知道那些引用的類放在哪裏,但是如果你要web工程啓動正常,是要告訴Tomcat等容器,你的jar包是在哪裏(放在lib目錄下,容器就知道了)。所以就有這種情況出現,在eclipse中加用戶庫,只是爲了調試,不加入用戶庫,eclipse找不到import的類,就會出現紅色的X號,不把用戶庫中的JAR包放到lib下,容量找不到引入的類,就會報錯。

 

add jar 和add external jars 與add library 中User Libraries的區別是:

通過“add jar” 和“add external jars”添加的jar包作爲程序的一部分被打包到最終的程序中。通過“User Libraries”添加的jar包不是。

 

關於Jar包 build path的作用

jar包不能在隨意的地方。 不管是Java Application 還是 Java Web Application 。

Java虛擬機是根據Java ClassLoader(類加載器)決定如何,到那裏去加載Class :

我們之所以把jar包放在classPath下,是因爲存在ClassPath ClassLoader

我們之所以可以不在ClassPath指定一些Jar包,但在Java程序中也能使用。

那是因爲有ClassPath ClassLoader的父類加載器負責加載。如jrd目錄下jre\lib\*.jar

我們之所以把Jar包放入webroot下的lib文件夾,並且可以在我們的程序中使用,那是容器實現了自己的ClassLoader。(Web中間件服務器類加載的機制和sun公司提供的3個默認加載器不同。)

所以說能不能加載Jar,加載哪裏的Jar,是根據ClassLoader決定的。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章