![](/img/trans.png)
[英]Cannot include 3rd-party jars into Android application with the maven-android-plugin
[英]Maven: Export jar with 3rd-party jars added to classpath in manifest
我正在使用Eclipse開發Java maven項目,並希望導出包含所有引用庫的jar 。 這些引用的庫屬於以下兩個類別之一:
它們是pom.xml
中的顯式(或隱式) 依賴項
我有一些庫不能用作maven工件並將它們放在/ lib中(並將它們添加到Eclipse中的構建路徑中)
有maven-assembly-plugin
,適用於1)。 但是,我無法找到包含非maven依賴項的maven插件,例如"all jars in /lib"
。
然后是Eclipse FatJar
插件,這種插件有效,但自2009年以來一直沒有更新,因此它似乎沒有維護。 另外我更喜歡我可以在pom.xml
直接指定的導出方法。
任何人都可以指向我的maven
插件或類似的東西,以導出所有引用的庫 ,包括案例2)? 這只需要將它們放在jar中並在manifest的類路徑中引用它們。
謝謝!
我認為處理此問題的最佳方法是將自定義庫包含到本地maven存儲庫中。 現在,您可以將庫作為maven依賴項包含在內,並且可以使用maven-assembly-plugin導出pom中指定的所有依賴項。
這是一個教程,如何將您的lib放入maven中的本地存儲庫,以便在您的pom中使用它。 http://www.mkyong.com/maven/how-to-include-library-manully-into-maven-local-repository/
在你的pom.xml中:
<!-- setup jar manifest to executable with dependencies -->
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<configuration>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
<archive>
<manifest>
<mainClass>your.main.class</mainClass>
</manifest>
</archive>
</configuration>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
</execution>
</executions>
</plugin>
這看起來像是第谷的任務。 它是一組maven插件,允許使用maven創建eclipse插件。 Tycho將清單條目視為構建依賴項。
但是我不知道如何在一個jar中打包所有這些依賴項。 這也可能與osgi規范相沖突。 但是如果你想忽略osgi,你可以嘗試使用jar-with-dependencies程序集。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.