Не хотите использовать devenv для создания и публикации решения Visual Studio 2012?
Я пытаюсь объединить проект Visual Studio 2010 с 2012 годом. Решение 2010 года имело проект развертывания, выходные данные которого можно реплицировать путем публикации в 2012 году. Наш сценарий сборки выглядит примерно так:
<target name="buildSolution">
<delete file="${BuildRootFolder}\build.log" />
<exec program="devenv.exe" verbose="true" timeout="2400000"
commandline='/out build.log ${BuildRootFolder}\Solution.sln /Build "Release" /deploy Solution'
basedir="C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE">
<environment>
<variable name="PATH"
value="blah blah....">
</environment>
</exec>
</target>
Как я могу обновить это, чтобы Опубликовать один из проектов в этом решении, используя профиль публикации, который я определил?
1 ответ
Решение
Forget devenv and use msbuild.
<property name="MSBuildPath" value="C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe"/>
<target name="buildSolution" depends="clean">
<exec program="${MSBuildPath}">
<arg line='"${BuildRootFolder}\Solution.sln"' />
<arg line='/property:Configuration="Release";DeployOnBuild=true;PublishProfile=Deployment' />
<arg value="/target:Build" />
<arg value="/verbosity:normal" />
<arg value="/nologo" />
</exec>
</target>