这个星期天我整个晚上都在努力做这件事:
<exec executable="osql.exe" dir="${basedir}" failonerror="true">
<arg value="-U<user>" />
<arg value="-P<password>" />
<arg value="-S<server>" />
<arg value="-QRESTORE DATABASE <database> FROM DISK='<absolute_path_to_database_backup>.bak'" />
<arg value="-b" />
</exec>
<arg line=""/>
也不工作。(
到同一个调用中,只使用SQLCMD实用程序。不幸的是,所有我能得到的是错误消息,从蚂蚁执行sqlcmd,有"意外属性。咨询帮助-?";
[exec] Sqlcmd: '-Q"RESTORE DATABASE <database> FROM DISK='<absolute_path_to_database_backup>.bak'"': Unexpected argument. Enter '-?' for help.
构建失败了C:SVNVer_trunkUpgradebuild.xml:72: exec return: 1
实际名称用<>约克。
我的电脑软件配置:
java version "1.7.0_02"
Java(TM) SE Runtime Environment (build 1.7.0_02-b13)
Java HotSpot(TM) 64位Server VM (build 22.0-b10, mixed mode)
Apache Ant(TM) version 1.8.3编译于2012年2月26日
任何帮助,高度赞赏为这个sqlcmd做出正确的语法…:)
好了,这里是我必须做的事情的总结,使它工作(至少从Jenkins:():
- 使用
<arg line="" />
语法,而不是<arg value="" />
- 逃逸路径附加/
- 根据建议重新配置我的工作站:http://social.msdn.microsoft.com/Forums/en-US/sqlsetupandupgrade/thread/3a2af602-75fe-4f9c-a795-733a228e7f30/