“接收”;错误ASPPARSE:无法加载类型…”;MVC webapp上的msbuild出错

“接收”;错误ASPPARSE:无法加载类型…”;MVC webapp上的msbuild出错,msbuild,cruisecontrol.net,configuration-management,Msbuild,Cruisecontrol.net,Configuration Management,我们让CCNET和msbuild创建常规构建。我正在尝试更新我们的流程,以便msbuild创建压缩部署包,并将它们发送到目标IIS7 web服务器。我在执行端到端解决方案时遇到问题,因此为了进行测试,我现在尝试从命令行调用msbuild。我执行以下声明: msbuild /target:Build;Package /P:Configuration=Staging;OutDir=D:\Builds\Viper.ProdSupport\MSDeployPkg\ /verbosity:diagnost

我们让CCNET和msbuild创建常规构建。我正在尝试更新我们的流程,以便msbuild创建压缩部署包,并将它们发送到目标IIS7 web服务器。我在执行端到端解决方案时遇到问题,因此为了进行测试,我现在尝试从命令行调用msbuild。我执行以下声明:

msbuild /target:Build;Package /P:Configuration=Staging;OutDir=D:\Builds\Viper.ProdSupport\MSDeployPkg\ /verbosity:diagnostic D:\builds\ViperPortal.ProdSupport\Code\Viper\Viper.UI.MVC\Viper.UI.MVC.csproj
我得到了这个错误:

/temp/global.asax(1):错误ASPPARSE:无法加载类型“Viper.UI.MVC.mvcapapplication”。[D:\builds\ViperPortal.ProdSupport\Code\Viper\Viper.UI.MVC\Viper.UI.MVC.csproj]

哦,对于我们的规格:.NET4、MVC3、IIS7/Win2k8 64位用于web服务器。构建服务器也是Win2k8,但我正在使用ccnet和完整的本地开发人员配置管理环境设置在Win7 32位机器上本地测试脚本


有人知道我为什么会犯这个错误吗?我读到一些消息,抱怨aspnet编译器或更改bin将程序集部署到的位置,但这些消息似乎都不适用于这里。我只是尝试调用msbuild,它一直工作到现在。我们有一个用于解决方案的自定义msbuild脚本。我试着使用它和mvc csproj文件作为构建配置文件。请帮忙!谢谢

如果您已设置为预编译视图,即您更改了:

<MvcBuildViews>false</MvcBuildViews>
false

true
这是因为MSBuild将输出抛出到不同于Visual Studio的位置,因此您应该更改运行预编译的文件夹:

<AspNetCompiler VirtualPath="temp" PhysicalPath="$(ProjectDir)" />

致:



一种可能是您缺少加载程序集所需的一个依赖项。尝试使用找出缺少的程序集的名称。感谢您的提示,Seva!我已经在这里发现了问题,但我一定会尝试该工具来解决未来的问题!感谢你的帮助,罗兰!我在一篇相关文章中找到了我的问题的解决方案,与您提到的类似:
<AspNetCompiler VirtualPath="temp" PhysicalPath="$(ProjectDir)" />
<AspNetCompiler VirtualPath="temp" PhysicalPath="$(WebProjectOutputDir)" />