我有一個系統接受插件讓用戶添加功能到管理系統。該插件基本上只是一個具有特定格式的zip文件(即該目錄中的文件x,該目錄中的y)。目前我使用maven-assembly-plugin插件來製作zip文件。通過maven插件注入依賴關係
的問題是,它是尷尬讓我的所有插件同步,並讓別人做一個插件,因爲他們需要有正確的assembly.xml
所以我一直試圖做一個定製包裝類型,以便開發者可以讓一個插件這樣的:
<groupId>com.example</groupId>
<artifactId>example</artifactId>
<version>1.0-SNAPSHOT</version>
<packaging>plugin</packaging> //not a standard type
這主要是工作,但醜陋的東西,現在是每個插件總是依賴於核心系統某些API。因此它們基本上具有相同的依賴關係。
mojo是否可能向mojo的用戶注入依賴關係?這似乎說這是不可能: http://maven.40175.n5.nabble.com/How-to-inject-dependencies-from-a-mojo-td83025.html
你讀過你提到的線程中的答案? – khmarbaise 2013-03-27 07:46:44
@khmarbaise是的,但那是5年以前。誰知道從那以後發生了什麼。 – mlathe 2013-03-27 19:46:31
我遇到了一個非常明顯和簡單的解決方案。我製作了一個包含依賴關係的「pom」項目,並要求開發人員將該pom作爲依賴項。這很好地解決了我的問題,因爲我可以將依賴關係集中在一個地方,並且每個「插件」都可以在需要時可傳遞到核心API依賴關係。十分簡單。 – mlathe 2013-03-27 22:12:58