[英]Maven : Copy only selected jars inside WEB-INF/lib
在我的Maven項目中,我具有某些依賴關系,這些依賴關系應該存在於WEB-INF / lib中。 我不能將所有jar放到WEB-INF / lib中,只能放到選定的jar中。 如何去做呢?
我不能使用maven-resources插件,因為那樣的話,我不得不在<include>
標記內提及整個jar的名稱,並且需要保持動態。
我嘗試使用<packagingExcludes>WEB-INF/lib/*.jar</packagingExcludes>
但是這沒有給我一個選項,只能在lib文件夾中插入選定的jar。
我也嘗試對某些jar使用<scope>provided</scope>
,但是由於這個原因,jar的名稱未添加到manifest.mf文件內的classpath字段中。
請提出一些解決方案。 提前致謝!
您可以使用Assembly插件和自定義的程序集描述符。 在描述符中,可以使用工件ID,組ID,版本和作用域設置要復制的jar。 它還支持正則表達式。 https://maven.apache.org/plugins/maven-assembly-plugin/advanced-descriptor-topics.html
這可能不是將WEB-INF/lib/
嵌套目錄的內容打包到WAR
文件中的最佳方法,但是在如何將所有必需的jar放入帶有maven的最終jar中的lib文件夾的問題中提出了實現。 (使用maven-dependency-plugin
插件)解決了將所有相關jar捆綁到最終jar的lib/
目錄中的JAR
需求。 奇怪的是,這是一個常見問題,有許多不同的解決方案。 此實現實際上將jar捆綁在嵌套的lib/
目錄中,而其他示例則提取了我依賴的jar的內容,並將其類放在我的類旁邊。 因此,這可能使您更接近一點,但可能不是處理WAR
文件的庫deps的正式方法。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.