这是我的情景:
我有build.bat
持有:
call tools\nant-0.92\bin\nant.exe -buildfile:deploy.build %* -logfile:deploy_NAnt.log
deploy.build
的一部分成立:
<project
name="EdpClient"
basedir="." default="build"
xmlns="http://nant.sf.net/release/0.92/nantContrib.xsd">
<!--INIT -->
...
<property name="version" value="1.48.0.4" />
...
<!--RELEVANT TARGET-->
<target name="BuildProductionApplication" description="Build">
<property
name="publishFolderParameter"
value="/p:PublishDir=${productionPublishFolder}" />
<echo message="Building..." />
<exec
program="${msbuildExe}"
workingdir="." verbose="true">
<arg value="${projectFile}" />
<arg value="/target:Clean;Publish" />
<arg value="${publishFolderParameter}" />
<arg value="/property:ApplicationVersion=${version}" />
<arg value="/property:PublisherName="${publisherName}"" />
</exec>
<echo message="Built" />
</target>
...
</project>
现在我的问题是:
"build.bat -version 1.48.0.4"
并替换参数
在我的结构?-version
参数,脚本应该抛出一些
在命令行中回复一下msg?感谢所有帮助!
答案 0 :(得分:2)
我就这样做了:
在我更改的deploy.build
文件中:
<property name="version" value="1.48.0.4" />
为:
<property name="version" value="${arg.version}" />
这就是build.bat(批处理)现在的样子:
@ECHO OFF
IF %1.==. GOTO ERROR
ECHO:BUILDING VERSION: %1 ...
CALL tools\nant-0.92\bin\nant.exe -buildfile:deploy.build -D:arg.version=%1 -logfile:deploy_NAnt.log
GOTO END
:ERROR
ECHO.
ECHO Please provide the version parameter (eg. "deploy 1.1.1.1")
ECHO.
GOTO END
:END
现在我可以调用build 1.48.0.4
命令。
它符合我的所有需求。