【发布时间】:2016-12-05 20:55:11
【问题描述】:
我正在尝试使用以下命令首先生成我的 jar 文件,然后将其复制到目录中。这两个命令都在一个批处理文件中。
mvn -f mypathtofile\pom.xml clean install
xcopy mypathtojarfile\myjar.jar newpath\*.* /R /Y
我发现我的 xcopy 从未发生过,因为 mvn 需要一些时间来生成 jar 文件,并且 xcopy 从未等到 mvn 完成生成该文件后才开始。当我搜索目标目录并没有找到应该复制的 jar 文件时,我意识到了这一点。
然后我做了一些研究,发现我可能可以使用这个:
start /b /wait mvn -f mypathtofile\pom.xml clean install
xcopy mypathtojarfile\myjar.jar newpath\*.* /R /Y
那时我遇到了 mvn 正确启动并生成 jar 文件但从不返回的问题。基本上,我的命令提示符只是在 mvn 完成后永远暂停,并且永远不会执行批处理文件中的下一行。这是我在命令提示符中看到的:
[exec] [INFO] BUILD SUCCESS
[exec] [INFO] ------------------------------------------------------------------------
[exec] [INFO] Total time: 1.997 s
[exec] [INFO] Finished at: 2016-07-31T15:20:35-04:00
[exec] [INFO] Final Memory: 18M/488M
[exec] [INFO] ------------------------------------------------------------------------
[exec]
有没有办法让 mvn 告诉命令行它完成了它的工作?
【问题讨论】:
-
如果
mvn是一个批处理文件(.bat或.cmd),你需要使用call mvn ...... -
这正是我所需要的。谢谢!
-
相关:this post
-
@aschipfl
call有等待命令吗? -
好吧,没有
/WAIT选项,call总是等待被调用的脚本或命令完成...
标签: windows maven batch-file