0

我有一个接受插件的系统,让用户可以向管理系统添加功能。该插件基本上只是一个具有某种格式的 zip 文件(即文件 x 在这个目录中,y 在那个目录中)。目前我使用 maven-assembly-plugin 插件来制作 zip。

问题是让我的所有插件保持同步并让其他人制作插件很尴尬,因为他们需要正确的 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

4

1 回答 1

0

在评论中回答:

我遇到了一个非常明显和简单的解决方案。我制作了一个包含依赖项的“pom”项目,并要求开发人员将该 pom 作为依赖项包含在内。这很好地解决了我的问题,因为我可以将依赖项集中在一个地方,并且每个“插件”都可以根据需要传递到核心 api 依赖项。十分简单。– 2013 年 3 月 27 日 22:12

于 2015-07-10T15:48:29.900 回答