Nik*_*lin 8 .net nant build-automation
我想在构建解决方案之前使用NAnt修改.h文件中的字符串.
.h文件中有一个宏:#define SERVER_ADDRESS"www.customserver.net",我想在部署软件之前修改字符串,这样每个构建都可以通过在命令行中传递地址来实现自定义地址.
有谁知道如何做到这一点?
谢谢!
Sco*_*aad 15
可以使用loadfile任务来帮助解决这个问题.此任务将给定文件加载到属性中.当您将什么是真正有用的是filterchain与replacetokens替换该文件的某些区域.例如,如果要定义类似于模板的头文件,看起来像这样:
#ifndef MyMacros_h
#define MyMacros_h
#define SERVER_ADDRESS "@SERVER_ADDRESS_TOKEN@"
#endif
Run Code Online (Sandbox Code Playgroud)
可以使用loadfile任务用任何字符串替换@ SERVER_ADDRESS_TOKEN @,然后使用echo任务实际写回真实的头文件.
<loadfile file="MyMacrosTemplate.h" property="theMacrosFileContents">
<filterchain>
<replacetokens>
<token key="SERVER_ADDRESS_TOKEN" value="www.customerserver.net" />
</replacetokens>
</filterchain>
</loadfile>
<echo file="MyMacros.h" message="${theMacrosFileContents}" />
Run Code Online (Sandbox Code Playgroud)
这将生成一个MyMacros.h文件,其中包含SERVER_ADDRESS的已修改字符串.
| 归档时间: |
|
| 查看次数: |
1932 次 |
| 最近记录: |