我可以修改Maven部署阶段以使用我自己的插件替换maven-deploy-plugin吗?

jbe*_*eck 7 deployment phase maven maven-deploy-plugin

我对Maven很新...

我正在尝试做的是在部署阶段跳过maven-deploy-plugin,同时用我自己的插件替换它(即我正在部署到非存储库位置).

我意识到我可以用其他多种方式做到这一点,但老板希望能够运行:

mvn部署

获取当前解决方法的结果,即禁用maven-deploy-plugin(似乎禁用整个部署阶段),并从命令行手动指定自定义上载目标.

我目前未能成功完成任务:

<executions>
    <execution>
        <phase>deploy</phase>
    </execution>
</executions>
Run Code Online (Sandbox Code Playgroud)

在包含我的插件规范的build/plugins/plugin部分中,因为部署阶段被跳过:

        <plugin>
            <artifactId>maven-deploy-plugin</artifactId>
            <version>2.7</version>
            <configuration>
                <skip>true</skip>
            </configuration>
        </plugin>
Run Code Online (Sandbox Code Playgroud)

谢谢!

yeg*_*256 12

禁用maven-deploy-plugin(似乎禁用了整个部署阶段)

这是不正确的.禁用maven-deploy-plugin不会禁用整个部署阶段.这就是它应该如何完成(看起来你已经这样做了):

<build>
  <pluginManagement>
    <plugins>
      <plugin>
        <artifactId>maven-deploy-plugin</artifactId>
        <configuration>
            <skip>true</skip>
        </configuration>
      </plugin>
    </plugins>
  </pluginManagement>
</build>
Run Code Online (Sandbox Code Playgroud)


Dun*_*nes 7

尝试使用此(未经测试的)替代方法来禁用标准部署插件:

<plugin>
    <artifactId>maven-deploy-plugin</artifactId>
    <version>2.7</version>
    <executions>
        <execution>
            <id>default-deploy</id>
            <phase>none</phase>
        </execution>
    </executions>
</plugin>
Run Code Online (Sandbox Code Playgroud)