使用构建插件pom.xml中生成的jar作为同一个pom中的依赖项

时间:2018-03-27 13:30:32

标签: java maven

这可能听起来很奇怪,但我有一个pom文件,其中一个jar文件是从build plugin部分生成的,我想我可以将这个生成的jar文件用作同一个pom中的依赖项吗?下面是将生成jar文件(jkl.jar)的插件部分。

<build>
    <plugins>
        <plugin>
            <artifactId>maven-antrun-plugin</artifactId>
            <executions>
                <execution>
                    <id>generate-sources</id>
                    <phase>generate-sources</phase>
                    <configuration>
                        <tasks>
                            <mkdir dir="/_build/" />
                        </tasks>
                    </configuration>
                    <goals>
                        <goal>run</goal>
                    </goals>
                </execution>
            </executions>
        </plugin>
        <plugin>
            <groupId>com.abc</groupId>
            <artifactId>xyz-plugin</artifactId>
            <version>${xyz.version}</version>
            <executions>
                <execution>
                    <id>generate-jar</id>
                    <phase>generate-sources</phase>
                    <goals>
                        <goal>generate</goal>
                    </goals>
                    <configuration>
                        ...
                    </configuration>
                </execution>
            </executions>
        </plugin>
    </plugins>
</build>

我可以在同一个pom中使用jkl.jar作为依赖项吗?即

<dependency>
    <groupId>...</groupId>
    <artifactId>...</artifactId>
    <version>...</version>
    <scope>system</scope>
    <systemPath>/_build/jkl.jar</systemPath>
<dependency>

我尝试设置构建插件来在验证时生成这个jar但没有用,maven抱怨它无法在该jar文件中找到java包。

我知道还有另外一种方法,在运行这个pom.xml之前创建一个子模块,并使用子模块中生成的jar作为pom.xml中的依赖项

我想知道有没有办法做到这一点?

0 个答案:

没有答案