Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/search/2.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
Java 有没有办法从maven配置执行批处理文件?_Java_Maven_Batch File - Fatal编程技术网

Java 有没有办法从maven配置执行批处理文件?

Java 有没有办法从maven配置执行批处理文件?,java,maven,batch-file,Java,Maven,Batch File,我有一个.bat文件,它执行Maven项目构建的一些先决条件,我希望在构建我开发的项目时自动执行这个.bat文件 有没有办法用Maven执行此任务 我看到了另一个类似的问题,但它没有解决我的问题。作为Maven构建过程的一部分,执行批处理文件最直接、最灵活的方法是使用和任务。作为一个例子,考虑运行Windows可执行文件的以下代码: <!-- in the <build> section --> <plugin>

我有一个
.bat
文件,它执行Maven项目构建的一些先决条件,我希望在构建我开发的项目时自动执行这个
.bat
文件

有没有办法用Maven执行此任务


我看到了另一个类似的问题,但它没有解决我的问题。

作为Maven构建过程的一部分,执行批处理文件最直接、最灵活的方法是使用和任务。作为一个例子,考虑运行Windows可执行文件的以下代码:

      <!-- in the <build> section -->
         <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-antrun-plugin</artifactId>
            <executions>
                <execution>
                    <id>sign</id>
                    <phase>package</phase>
                    <goals>
                        <goal>run</goal>
                    </goals>
                    <configuration>
                        <tasks>
                            <exec executable="${env.WIN7BASE}\bin\selfsign\inf2cat.exe">
                                <arg line="/drv:${project.build.directory}\classes /os:Vista_X86" />
                            </exec>
                            <exec executable="${signtool}">
                                <arg line="sign /v /a /t http://timestamp.verisign.com/scripts/timestamp.dll ${project.build.directory}\classes\${project.name}.cat" />
                            </exec>
                        </tasks>
                    </configuration>
                </execution>
            </executions>
        </plugin>

org.apache.maven.plugins
maven antrun插件
签名
包裹
跑

可能重复:我个人建议避免这样做。调用shell脚本使maven构建不可移植。学习编写一个小魔咒,或者切换到其他构建工具。你可以使用
maven-antrun-plugin
并用ANT执行.bat文件。你的请求的目的是什么?为什么要执行批处理文件?批处理文件将做什么?除了不可移植等,而且可能无法在CI解决方案上工作。批处理文件调用install node、npm和bower,如果需要,使用npm install、bower install等命令获取开发依赖项,并运行Grunt task runner以缩小js文件