【发布时间】:2009-03-09 17:50:56
【问题描述】:
我们可以使用 nant 在 C# 中构建 .sln 文件吗?
【问题讨论】:
我们可以使用 nant 在 C# 中构建 .sln 文件吗?
【问题讨论】:
根据我的经验,最简单的方法是使用 NAnt 调用 MSBuild,并让 MSBuild 自己构建解决方案文件。以我的Protocol Buffers build file 为例。
我使用NAntContrib,它有一个msbuild 任务:
<property name="nantcontrib-dir"
value="${path::combine(nant::get-base-directory(), '../../NAntContrib')}"
overwrite="false" />
<loadtasks assembly=
"${path::combine(nantcontrib-dir, 'bin/NAnt.Contrib.Tasks.dll')}"
/>
...
<target name="build"
description="Builds all C# code">
<msbuild project="${src}/ProtocolBuffers.sln">
<property name="Configuration"
value="${build-configuration}" />
</msbuild>
</target>
【讨论】:
msbuild 可以构建您的解决方案或执行整个 msbuild 脚本的任务:
<target name="compile">
<msbuild project="xxx.sln">
<arg value="/property:Configuration=release" />
<arg value="/t:Rebuild" />
</msbuild>
</target>
【讨论】:
您可以将msbuild 作为 nant 任务调用。
【讨论】:
solution 任务可能会有所帮助。
【讨论】:
您可以使用解决方案任务,尽管它不支持 Beta 版 nant 之外的 VS2008 解决方案。不过它来了。
【讨论】: