web App libraries跟referenced libraries的一些问题
該博文內容經參看網上其他資料歸納所成,并注明出處:
問題一:myeclipse中Web App Libraries無法自動識別lib下的jar包(http://blog.csdn.net/tiancai1202000/article/details/49178721)
myeclipse,lib中的jar包無法自動加載到Web App Libraries中,即使添加了Web App Libraries這個libraries,jar包還是如法加入。
解決辦法:
在.project文件中,修改<natures>使用以下內容覆蓋原來的nature
<nature>org.eclipse.jem.workbench.JavaEMFNature</nature>
<nature>com.genuitec.eclipse.ast.deploy.core.deploymentnature</nature>
<nature>com.genuitec.eclipse.j2eedt.core.webnature</nature>
<nature>org.eclipse.jdt.core.javanature</nature>
<nature>org.eclipse.wst.jsdt.core.jsNature</nature>
<nature>org.eclipse.wst.common.project.facet.core.nature</nature>
<nature>org.eclipse.wst.common.modulecore.ModuleCoreNature</nature>
然后,在.settings文件夾中,加入?org.eclipse.wst.common.component 文件,內容:
<?xml version="1.0" encoding="UTF-8"?>
<project-modules id="moduleCoreId" project-version="1.5.0">
? ? <wb-module deploy-name="工程名">
? ? ? ? <wb-resource deploy-path="/" source-path="/WebRoot"/>
? ? ? ? <wb-resource deploy-path="/WEB-INF/classes" source-path="/src"/>
? ? ? ? <property name="context-root" value="/工程名"/>
? ? ? ? <property name="Java-output-path" value="/工程名/WebRoot/WEB-INF/classes"/>
? ? </wb-module>
</project-modules>
問題二:jar包的存放集合介紹 JRE System Library,Referenced Libraries,Web App Libraries
參考一:https://segmentfault.com/q/1010000006146055
1.web app libararies里面的jar包是開發web app必備的一些jar包,系統指定的。
2.referenced libraries里面的jar包是系統以來的庫函數的一些jar包。
參考二: http://www.cnblogs.com/dougest/p/6593667.html
JRE System Library,Referenced Libraries,Web App Libraries?這三個都是jar包的存放集合
?
JRE System Library主要存放J2SE的標準jar,一般不需要調整。
Referenced Libraries是存放第三方的jar包,也就是自己導入的jar包。在項目屬性的Java Build Path中的Libraries中配置。本人理解,
這里導入和配置jar包,都是為了讓web工程能夠在eclipse開發環境可以正常編譯,不報錯而已。。如果該web工程利用eclipse生成war包,
是不會導出其jar包到WEB-INF/lib文件夾下的。
Web App Libraries的主要作用是讓eclipse導出war包的時候,會把其目錄下的所有jar或者項目中的工程引用都導出到WEB-INF/lib文件
夾下。Web App Libraries中的jar包在eclipse中項目屬性的Java EE Module Dependencies配置的。如果你勾上了,或者添加了外部jar包,都會在WEB-INF/lib文件夾下生成。當然,如果你直接在WEB-INF/lib文件夾下,copy一個jar進入,刷新一下,Web App Libraries也會自動增加一個jar的引用。簡單說,Java EE Module Dependencies的配置只針對Web App Libraries的。
參考三:http://blog.sina.com.cn/s/blog_7ffb8dd501013xfz.html
一、在Myeclipse中新建項目一般會有下列四種libraries:
??JRE System Library , java EE 6 Libraries , Referenced Libraries,Web App??Libraries
二、各種libraries含義
??JRE System Library:?指Java SE 的常用庫文件集合,建立普通的Java項目均會使用;?
??java EE 6 Libraries:?指Java EE的常用庫文件的集合,建立Web項目會用到這個庫集合與Java SE的庫文件集合;
??Referenced Libraries:?指你項目中所使用的第三方庫文件集合.如果你把項目所需要的其他JAR包直接加在 項??目->屬性->Java Build Path -> Libraries 中的時候,MyEclipse 會自動將這些JAR包歸類到一個集合中, 并取名為 Referenced Libraries , 顯示在項目中.
???????問:?經常在SSH中出現jar包沖突 不知是Referenced Libraries 中的jar文件沖突 還是 WebRoot /web-inf/ lib 下jar文件沖突???
??????解答:編譯期沖突是由Referenced Libraries中jar包沖突引起;運行期沖突是由 WebRoot /web-inf/ lib 下jar文件沖突引起的。首先 Referenced Libraries可以是引用 WebRoot /web-inf/ lib下的jar包,也可以是其他從別的地方復制過來的第三方jar包。 Referenced Libraries是編譯環境下使用的JAR包, 所謂編譯環境下使用的JAR包, 就是說你在Eclipse中進行源文件的編寫的時候, 所需要引用到的類都從Referenced Libraries這個集合中的JAR包中拿; WebRoot /web-inf/lib中的JAR包是運行時環境下使用的JAR包, 所謂運行時環境下使用的JAR包,就是說你在運行你的項目的時候所需要使用的JAR包的集合; 注意區分兩種環境:編譯環境與運行環境.
???Web App??Libraries:This container dynamically manages classpath entries for types in the?WEB-INF/lib?and?WEB-INF/classes?directories. 相信有點英語基礎的的人都能看的懂。
???關于web項目沒有看到Web App??Libraries,可以通過右鍵項目/built path/Configure built path/點擊libraries標簽
---------------------
作者:aspu O_O
來源:CSDN
原文:https://blog.csdn.net/dyr_1203/article/details/76513070
版權聲明:本文為博主原創文章,轉載請附上博文鏈接!
轉載于:https://www.cnblogs.com/Jeely/p/11101287.html
總結
以上是生活随笔為你收集整理的web App libraries跟referenced libraries的一些问题的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 他山之石:Github的使用
- 下一篇: 雪花算法 Java 版