Как получить имя цели в Moven2's Mojo во время выполнения - PullRequest
0 голосов
/ 04 мая 2009

Для Maven2, как я могу получить имя цели, которая в данный момент выполняется в методе выполнения Mojo? Именно мне нужно значение атрибута @goal внутри метода выполнения Mojo.

1 Ответ

1 голос
/ 04 мая 2009
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"

...