Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/google-sheets/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何忽略Maven插件_Maven_Maven 3_Maven Plugin - Fatal编程技术网

如何忽略Maven插件

如何忽略Maven插件,maven,maven-3,maven-plugin,Maven,Maven 3,Maven Plugin,我们有Maven插件的groupId: com.company.maven.plugins 不幸的是,当我在这个groupId中创建第一个插件时,我最初使用了错误的命名约定 maven-myplugin-plugin 插件的1.x版本使用了这个名称。当我意识到这是错误的,我改变了名字,以满足客户的要求 然后我将版本更新为2.x 在我的local settings.xml文件中,我使用plugingroup从命令行访问我的插件。此特定插件不必在pom文件中指定 不幸的是,当我试图从命令行访问我

我们有Maven插件的groupId:

com.company.maven.plugins
不幸的是,当我在这个groupId中创建第一个插件时,我最初使用了错误的命名约定

maven-myplugin-plugin
插件的1.x版本使用了这个名称。当我意识到这是错误的,我改变了名字,以满足客户的要求

然后我将版本更新为2.x

在我的local settings.xml文件中,我使用
plugingroup
从命令行访问我的插件。此特定插件不必在pom文件中指定

不幸的是,当我试图从命令行访问我的插件而不确定名称的范围时,我总是得到最新版本的错误命名约定。所以,我得到了一个1.x版本

我能告诉Maven在从命令行访问时忽略
Maven myplugin插件
工件(即
mvn myplugin:mygoal
)吗


有些项目仍然使用旧的1.x插件,所以我不想从我们的存储库中删除它们。此外,我们至少使用了Maven 3.0.3。

似乎Maven 3按照

1. maven-myplugin-plugin
2. myplugin-maven-plugin
3. ... hard-wired groups ...
按照官方命名惯例,imho的命名方式应该是相反的。尽管如此,我认为您没有机会修复此问题。我尝试了一系列的方法,基本上是在maven插件配置中使用。使用goalPrefix安装不推荐使用的命名插件的新版本不起作用。我想您可以做的一件事是为正确命名的插件定义另一个前缀,例如:

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-plugin-plugin</artifactId>
    <version>3.2</version>
    <configuration>
        <skipErrorNoDescriptorsFound>true</skipErrorNoDescriptorsFound>
        <goalPrefix>myplugin2</goalPrefix>
    </configuration>
</plugin>

org.apache.maven.plugins
maven插件
3.2
真的
myplugin2
另一种方法是调整旧插件的pom.xml,将其重命名为不同的名称。但这意味着您的同事将需要不同的命令来执行不同的mvn命令。或者你可以重命名你当前的插件-类似的结果


如果有更好的解决方案,我也会感兴趣

最后我重新命名了插件。谢谢你的建议。
<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-plugin-plugin</artifactId>
    <version>3.2</version>
    <configuration>
        <skipErrorNoDescriptorsFound>true</skipErrorNoDescriptorsFound>
        <goalPrefix>myplugin2</goalPrefix>
    </configuration>
</plugin>