2008-09-07 95 views
19

我想在本地使用NAnt和MSBuild发布一个Asp.net MVC Web应用程序。这是我用于我的NAnt目标的东西;如何使用MSBuild发布Asp.NET Web应用程序?

<target name="publish-artifacts-to-build"> 
    <msbuild project="my-solution.sln" target="Publish"> 
     <property name="Configuration" value="debug" /> 
     <property name="OutDir" value="builds\" /> 
     <arg line="/m:2 /tv:3.5" /> 
    </msbuild> 
</target> 

和我所得到的只是这个作为回应;

[msbuild]   Skipping unpublishable project. 

是否可以通过命令行以这种方式发布Web应用程序?

回答

21

您试图调用的“发布”目标是针对“OneClick”部署,而不是发布网站......这就是为什么您会看到看似奇怪的消息。 你会想使用AspNetCompiler任务,而不是MSBuild任务。有关此任务的更多信息,请参见http://msdn2.microsoft.com/en-us/library/ms164291.aspx。您的“PublishDir”将对应于任务的TargetPath属性。

Source

14

我想出了这样的解决方案,为我的伟大工程:

msbuild /t:ResolveReferences;_WPPCopyWebApplication /p:BuildingProject=true;OutDir=C:\Temp\buidl\ Test.csproj 

秘诀是_WPPCopyWebApplication目标。

+0

_WPPCopyWebApplication在哪里?我有VS 2008和vbproj。 – Kiquenet 2011-07-20 18:02:03

相关问题