作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我的客户解决方案中的一些项目有一个构建后事件:将构建输出xcopy
到特定文件夹。这在本地构建时效果很好。但是,在 TeamCity 中,我偶尔会遇到
xcopy [...] exited with code 2
如果我使用常规copy
,它会以代码1退出。我希望这与文件锁定有关,尽管正在复制的特定文件并不相同,所以也许只是锁定共享目标目录。我使用 /y
来不提示覆盖文件。
为什么这在 TeamCity 中失败,但在本地却失败?
最佳答案
即使您为 xcopy 提供了 /Y
开关,当 xcopy 不知道您要复制的内容是文件还是目录时,您仍然会收到错误消息。此错误将显示为“退出并显示代码 2”。当您在命令提示符下运行相同的 xcopy 时,您将看到 xcopy 正在请求文件或目录的响应。
要通过自动构建解决此问题,您可以使用管道回显预定义的响应。
要说你正在复制的东西是一个文件,请在F
中回显:
echo F|xcopy /y ...
要说你正在复制的东西是一个目录,请在D
中回显:
echo D|xcopy /y ...
有时,只需使用复制命令而不是 xcopy 即可解决上述问题:
copy /y ...
但是,如果通向最终文件目标的目录不存在,则会出现“以代码 1 退出”的情况。
记住:谨慎使用 /C
开关和 xcopy。
关于teamcity - 为什么在 TeamCity 构建中构建后步骤 (xcopy) 偶尔会退出并显示代码 2?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7835304/
我是一名优秀的程序员,十分优秀!