MyEclipse版本:MyEclipse Professional 2014 (Eclipse操作應該也類似)
問題
有時候一個Web項目(JavaEE項目)會依賴於另一個Java SE項目的類庫和資源。但又需要隨時編輯這個Java SE項目,不方便將其打包爲jar。那麼如何在Web(Java EE)項目中引用其他的Java SE項目?
解決方法
例如:一個Web(Java EE)項目(簡寫爲[Web-Project])依賴於pds-fw和pds-srv兩個Java SE子項目。
前提:需保證所有項目都已導入到當前的Workspace中。
在[Web-Project]中引入子項目的方法如下:
1.在Build Path中引入子項目
項目名-右鍵->build path->configure build path->project選項卡->.點擊add,引用子項目
2. Web Deployment Assembly引用
不過值得注意的是,即使這樣,只能保證編譯通過,如果在web server上部署運行依然會出錯,這裏我們還需要把另外兩個項目加入部署環境:
2.1在WebDeploymentAssembly中引用子項目
右鍵[Web-Project]->properties,進入如下界面,選擇MyEclipse->DeploymentAssembly
點擊“Add”,在彈出的對話框中選擇“Project”,並引入子項目:
2.2在WebDeployment Assembly中引用子項目所依賴的JAR包
如果子項目依賴於一些JAR包,那麼需要手工逐個引用這些JAR包。
在“Deployment Assembly”中,點擊“Add”:
選擇“Archives from Workspace”:
單擊Add,然後逐個引入所依賴的JAR包(注意:子項目依賴的每個JAR包都要加入進來)
引入的JAR包,在部署時會被自動複製到WEB-INF/lib/路徑下。
注意:
引入JAR包時,要注意避免依賴衝突。例如:Web項目的Struts2框架包含了log4j 2.2的JAR包,此時又引入另一個版本的log4j,就會導致程序在運行時報錯。
參考文章:
CSDN博客-Eclipse中項目引用關聯項目方法及注意事項
Referencing Java Project Libraries in WARs with Eclipse