如何在使用 windows bat 命令构建自定义工件后上传它?

How to upload custom artifact after it was build using a windows bat command?

我有一个 windows 批处理文件来为我创建一个文件 myUser.aaa。

我使用 exec-maven-plugin 调用这个 bat 文件

 <plugins>
            <plugin>
                <groupId>org.codehaus.mojo</groupId>
                <artifactId>exec-maven-plugin</artifactId>
                <version>1.1</version>
                <executions>
                    <execution>
                        <phase>pre-integration-test</phase>
                        <goals>
                            <goal>exec</goal>
                        </goals>
                    </execution>
                </executions>
                <configuration>
                    <executable>scripts/MyBat.bat</executable>
                </configuration>
            </plugin>
        </plugins>

我想知道的是如何在 MyBat.bat 执行后将文件安装到我的 repo 中?

我首先想使用 bat 文件中的 mvn 命令来上传它,但是这个作业是从 Jenkins 服务器执行的,它有自己的 maven 配置。如果我从 bat 文件 运行 mvn 它将引用本地系统上的 maven。

我建议使用 build-helper-maven-plugin 将补充工件添加到您的构建中,然后它将与其余工件一起部署,可以像这样完成:

<project>
  ...
  <build>
    <plugins>
      ...
      <plugin>
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>build-helper-maven-plugin</artifactId>
        <version>1.9.1</version>
        <executions>
          <execution>
            <id>attach-artifacts</id>
            <phase>package</phase>
            <goals>
              <goal>attach-artifact</goal>
            </goals>
            <configuration>
              <artifacts>
                <artifact>
                  <file>some file</file>
                  <type>extension of your file </type>
                  <classifier>optional</classifier>
                </artifact>
                ...
              </artifacts>
            </configuration>
          </execution>
        </executions>
      </plugin>
    </plugins>
  </build>
</project>

也许您应该将 exec-maven-plugin 绑定到较早的阶段或将 build-helper-maven-plugin 绑定到较晚的阶段。我建议使用 prepare-package 作为 exec-maven-plugin。此外,我建议使用最新版本的插件。