如何在运行时获取maven2的Mojo中的目标名称

发布于 2024-07-18 01:01:18 字数 80 浏览 5 评论 0原文

对于 Maven2,我如何获取 Mojo 的执行方法中当前正在执行的目标名称? 准确地说,我需要 Mojo 的执行方法中 @goal 属性的值。

For Maven2 how can I get the name of goal currently being executed in Mojo's execute method? Precisely I need value of @goal attribute inside Mojo's execute method.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

我不在是我 2024-07-25 01:01:18
public static String getGoalName(PluginDescriptor pluginDescriptor, String mojoClassName) {
        String goalName=null;
        List<MojoDescriptor> mojoDescriptorList = pluginDescriptor.getMojos();
        for (MojoDescriptor mojoDescriptor : mojoDescriptorList) {
            if (mojoDescriptor.getImplementation().equals(mojoClassName)) {
                goalName=mojoDescriptor.getGoal();
                break;
            }
        }
        return goalName;
    }

在这里,PluginDescriptor 可以从 pluginManager.getPluginDescriptorForPrefix("prefix-for-your-plugin") 获取。 PluginManager 可用作 @component role="org.apache.maven.plugin.PluginManager"

public static String getGoalName(PluginDescriptor pluginDescriptor, String mojoClassName) {
        String goalName=null;
        List<MojoDescriptor> mojoDescriptorList = pluginDescriptor.getMojos();
        for (MojoDescriptor mojoDescriptor : mojoDescriptorList) {
            if (mojoDescriptor.getImplementation().equals(mojoClassName)) {
                goalName=mojoDescriptor.getGoal();
                break;
            }
        }
        return goalName;
    }

Here, PluginDescriptor can be fetched from pluginManager.getPluginDescriptorForPrefix("prefix-for-your-plugin"). PluginManager is available as @component role="org.apache.maven.plugin.PluginManager"

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文