eclipse 添加jar包幾種方式對比

Java中的Jar是如此的重要,以至於沒有他們,我們就不能做出如此藝術的程序:封裝、模塊化、複用等等(無ant、marven方式) 。

今天,我就來整理一些有關項目中的jar包添加管理的方法以及常見問題的解決:

1、jar導入到我們的web項目中的classpath下

     1)這裏呢,一種方法是,直接用MyEclipse裏自帶的相關的項目jar包,右擊項目“MyEclipse”菜單,選擇對應的jar包就OK了,例“Add Spring Capabilities”,並且可以設置Spring的一些配置信息,不錯的可視化操作;

     2)添加外部的jar包到web項目的lib包下,右擊項目“Properties”-->“Java Build Path”-->“Libraries”選項卡(當然了,此操作下,不僅僅這一種添加jar包的方式);

     3)自己手動拷貝jar文件到項目的lib包下,具體操作只要把要添加的jar文件拷貝到MyEclipse中的workspace下的lib包裏就好了;

至此,jar文件的添加就OK了,so easy!jar是加進去了,但這幾種有什麼區別,以後如何管理呢,接下來看看第2點

 

2、三種jar包添加方式,都行得通,很OK,那麼要如何擇決呢

     1)這種方式,jar文件直接鏈接到MyEclipse的文件下,並沒有拷貝到WEB-INF/lib目錄下,不得用項目的發佈、移植,可能會出現jar找不到的情形;

     2)選擇性比較的強,可以隨意的加jar包,只要在你本機存在就可以了,鏈接的也是jar文件的絕對路徑,缺點同1;

     3)直接添加到WEB-INF/lib目錄下,移植性強,可操作性也強。

總而言之,第3)種jar包導入方式,個人覺得還是不錯的了!

 

3、顯示/隱藏項目裏的jar文件

     不同的開發人員,都有着他固有的習慣,有的人就覺得把jar包顯示在開發視圖裏太礙眼,看起來不舒服,複雜。而有些人呢,他就想研究看看到底運用了哪些技術,導了哪些jar包,並且通過點擊jar包裏的class文件直接查看源碼(假設先前有導入源碼)。所以呢,這裏就牽涉到了一個jar包的顯示與隱藏問題了:在Package Explorer這個窗體中,右上角有個下拉小三角,點擊-->“Filters”-->“Name filter patterns(matching names will be hidden)”,在這一選項下填有*.jar,勾上覆選框即表示這一類的文件不顯示,多個類型之間可用“,”分隔。

 

4、在Eclipse工程的Java Build Path設置中,可以通過加入第三方的jar包,但是,我發現是有好幾種方法來完成這個操作的,有“Add jars”,“Add Externel jars”,“Add library”,“Add Classes Loader”等,這幾種方式有什麼區別嗎?
add jar是表示從你的工程裏添加JAR,前提是你把jar已經放到自己的工程目錄裏。
add external jar表示這個jar的位置需要URI來定位,需要給出全路徑。
add library 是一些已經定義好的jar的集合,因爲它們經常是一起用,所以簡化了些操作,比如你做RCP開發的時候就會有個plugin library包含了運行工程所需要的基本插件。
Add classes Loader -- 這個應該是 add class folder吧?這個跟添加jar是一個意思,就是告訴ClassLoader去哪找class

 

5.當出現java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderListener類似這種找不到Listener的異常時,要切記spring的jar包一定要放在工程的lib下這樣才能避免這個錯誤的發生。

補充:雖說無論用什麼方式導入包在本地運行都是一樣的,但實事上我運行時,有的只有Java Build Path才起作用,有的只有導入到lib下才行。用Java Build Path導入包和把包複製到lib下是有區別的,它倆其實不會衝突,也沒有什麼關係的,Java Build Path是我們編譯需要的包,在比如在import ***.***.***時如果沒用Java Build Path導入包的話類裏面就有紅叉,說不識別這個類;導入到lib下是程序運行時需要的包,即便用Java Build Path導入過的包,沒放到lib下,運行項目時會出現ClassNotFoundException的異常。

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