Visual Studio 2005无法在发布配置模式下编译

时间:2009-05-07 16:45:01

标签: asp.net configuration visual-studio-2005 compilation

总结:如何在发布模式下编译...我无法让它“接受”我想做的事。

我在VS2005 C#中有一个web服务项目,我正在尝试优化。我提出的意识之一是建议在发布模式下编译。我不确定在这里会发生什么,但这是我所看到的:

我正确选择项目并选择“属性”,然后选择“构建”选项卡 我单击Configuration下拉框,设置为RELEASE并注意Output Path是\ bin 我单击项目上的REBUILD,DLL进入\ bin \ debug文件夹(不是\ bin)! 这是一个从编译输出窗口粘贴的片段(注意它显示配置为“Debug Any CPU”和稍后/ define:DEBUG; TRACE):

------ Rebuild All started: Project: TRIMBrokerService, Configuration: Debug Any CPU ------
C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Csc.exe /noconfig /nowarn:1701,1702 /errorreport:prompt /warn:4 /define:DEBUG;TRACE 
/reference:"C:\Program Files\Microsoft WSE\v3.0\Microsoft.Web.Services3.dll" /reference:C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\System.Configuration.dll /reference:C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\System.Data.dll /reference:C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\System.dll 
/reference:C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\System.Drawing.dll /reference:C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\System.EnterpriseServices.dll /reference:C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\System.Web.dll /reference:C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\System.Web.Mobile.dll /reference:C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\System.Web.Services.dll /reference:C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\System.Xml.dll /reference:..\TRIMBrokerUtilities\TRIMBrokerUtil\bin\Debug\TRIMBrokerUtil.dll 
/debug+ /debug:full /optimize- /out:obj\Debug\TRIMBrokerService.dll /target:library FaultCode.cs FileService.asmx.cs Properties\AssemblyInfo.cs Properties\Settings.Designer.cs Settings.cs "Web References\ASMXwsTrim\Reference.cs"

Compile complete -- 0 errors, 0 warnings
TRIMBrokerService -> C:\Documents and Settings\johna\My Documents\Visual Studio 2005\Projects\WSE\TRIMBrokerPassingByteArray\TRIMBroker\TRIMBrokerService\bin\debug\TRIMBrokerService.dll
========== Rebuild All: 1 succeeded, 0 failed, 0 skipped ==========

我注意到我可以与Build选项卡对话框进行交互,当我将Configuration下拉列表框更改为Active(Debug)或只是Debug时,输出路径会更改为\ bin \ debug,但是我不能似乎让它在发布模式下编译。有诀窍吗?我担心必须阅读MSBuild文档只是为了部署我的小网络服务,因为我认为这比我现在需要的更多。

4 个答案:

答案 0 :(得分:5)

右键点击您的解决方案,然后选择Configuration Manager..确保“Active solution configuration”设置为Release。然后确保下面网格中的项目设置为使用Release配置。

也许有些事情被意外改变了......

答案 1 :(得分:2)

除了Ryan's response之外,项目设置的Build选项卡上的配置设置对当前构建模式没有影响,这只允许您在每个配置的构建模式下修改此项目的设置容易的地方。

您还可以使用默认“标准”工具栏上的“解决方案配置”下拉列表,其中列出了“调试”按钮和“解决方案平台”下拉列表旁边的解决方案配置。

答案 2 :(得分:2)

我遇到了与VS 2008同样奇怪的问题。在调试模式下编译的项目很好但在发布模式下发出了许多错误消息。经过几天的尝试和错误。我终于找到了问题:一些路径超过260个字母的文件。它适用于调试模式的原因是因为单词“debug”比单词“release”少2个字母。碰巧在“释放”模式下越过了260个字母。如果您像我一样拥有嵌套项目目录的长名称,请注意这一点。缩短主目录名后问题就消失了。

答案 3 :(得分:1)

如果你已经将程序集转到bin \ Debug,那么有人以错误的方式修改了项目。任何使用ASP.NET的东西都需要让程序集转到bin。