1

我正在将带有GMaven 插件的遗留 Maven 构建迁移到GMavenPlus,并遇到了我不知道如何从 Groovy 脚本中的本地源文件夹调用外部 Groovy 类的问题。

这是我之前的设置:

<execution>
    <id>process-static-content</id>
    <goals>
        <goal>execute</goal>
    </goals>
    <phase>process-resources</phase>
    <configuration>

        <scriptpath>
            <element>${pom.basedir}/src/main/some-local-path</element>
        </scriptpath>
        <source>
            // call class from scriptpath that needs access
            // to Maven internals
            new SomeClassFromTheAboveFolder(project, log).run();
        </source>
    </configuration>
</execution>

更改<source>to<scripts><script>是显而易见的,但据我所知,一个<script>块只能包含本地 groovy 代码或脚本的文件路径,但都不能帮助我实现上述使用模式。

有人可以提供见解吗?

4

1 回答 1

1

因此,您希望将其他 Groovy 源添加到 GMavenPlus 的类路径中,因为在调用 GMavenPlus 的生命周期中这些访问类不是 Maven 项目的一部分(例如,您可能需要在生成期间访问的集成测试类-测试源阶段)。

你是对的,目前没有机制可以实现这一点(因为我根本没有考虑过这种情况)。但我很高兴添加它。我已经打开#66来添加这个功能。

于 2016-08-18T01:15:42.890 回答