【问题标题】:Another Strange ASP.net Error: The compiler failed with error code 255另一个奇怪的 ASP.net 错误:编译器失败,错误代码 255
【发布时间】:2015-11-29 23:03:44
【问题描述】:

我已经尝试了other posts的所有解决方案

这个简单的网络应用程序可以在我的笔记本电脑上运行:windows 10/ VS-2015

部署到我的 WIN-2012 服务器会出现此错误:

编译错误说明:编译过程中发生错误 编译服务此请求所需的资源。请 查看以下特定错误详细信息并修改您的源 适当的编码。

编译器错误消息:编译器失败,错误代码为 255。

其他 SO 帖子中的解决方案都没有帮助。

Show Detailed Compiler Output:

c:\windows\system32\inetsrv> "C:\Windows\Microsoft.NET\Framework64\v4.0.30319\vbc.exe" /t:library /utf8output /R:"C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System\v4.0_4.0.0.0__b77a5c561934e089\System.dll" /R:"C:\Windows\Microsoft.Net\assembly\GAC_MSIL\Microsoft.CSharp\v4.0_4.0.0.0__b03f5f7f11d50a3a\Microsoft.CSharp.dll" /R:"C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files\oc\88c6cdde\6b37fcc6\assembly\dl3\e9f43226\00c8c33b_c72ad101\OC.Web2.dll" /R:"C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.Web.ApplicationServices\v4.0_4.0.0.0__31bf3856ad364e35\System.Web.ApplicationServices.dll" /R:"C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.ServiceModel.Activation\v4.0_4.0.0.0__31bf3856ad364e35\System.ServiceModel.Activation.dll" /R:"C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.Drawing\v4.0_4.0.0.0__b03f5f7f11d50a3a\System.Drawing.dll" /R:"C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.Runtime.Serialization\v4.0_4.0.0.0__b77a5c561934e089\System.Runtime.Serialization.dll" /R:"C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.ServiceModel.Web\v4.0_4.0.0.0__31bf3856ad364e35\System.ServiceModel.Web.dll" /R:"C:\Windows\Microsoft.Net\assembly\GAC_64\System.Web\v4.0_4.0.0.0__b03f5f7f11d50a3a\System.Web.dll" /R:"C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.Core\v4.0_4.0.0.0__b77a5c561934e089\System.Core.dll" /R:"C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.Web.Services\v4.0_4.0.0.0__b03f5f7f11d50a3a\System.Web.Services.dll" /R:"C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files\oc\88c6cdde\6b37fcc6\assembly\dl3\c13fc534\00128170_db94d001\Microsoft.AspNet.FriendlyUrls.dll" /R:"C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.WorkflowServices\v4.0_4.0.0.0__31bf3856ad364e35\System.WorkflowServices.dll" /R:"C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.ServiceModel\v4.0_4.0.0.0__b77a5c561934e089\System.ServiceModel.dll" /R:"C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.Web.DynamicData\v4.0_4.0.0.0__31bf3856ad364e35\System.Web.DynamicData.dll" /R:"C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files\oc\88c6cdde\6b37fcc6\assembly\dl3\8ff134f9\00fd38bf_4821d101\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.dll" /R:"C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.ComponentModel.DataAnnotations\v4.0_4.0.0.0__31bf3856ad364e35\System.ComponentModel.DataAnnotations.dll" /R:"C:\Windows\Microsoft.Net\assembly\GAC_64\System.Data\v4.0_4.0.0.0__b77a5c561934e089\System.Data.dll" /R:"C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.ServiceModel.Activities\v4.0_4.0.0.0__31bf3856ad364e35\System.ServiceModel.Activities.dll" /R:"C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.Xml.Linq\v4.0_4.0.0.0__b77a5c561934e089\System.Xml.Linq.dll" /R:"C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files\oc\88c6cdde\6b37fcc6\assembly\dl3\7686bcd0\001d3ec6_4198d001\Newtonsoft.Json.dll" /R:"C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.Xml\v4.0_4.0.0.0__b77a5c561934e089\System.Xml.dll" /R:"C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files\oc\88c6cdde\6b37fcc6\assembly\dl3\5993785e\00cabc17_4a21d101\AspNet.ScriptManager.jQuery.dll" /R:"C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.Data.DataSetExtensions\v4.0_4.0.0.0__b77a5c561934e089\System.Data.DataSetExtensions.dll" /R:"C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.Web.Extensions\v4.0_4.0.0.0__31bf3856ad364e35\System.Web.Extensions.dll" /R:"C:\Windows\Microsoft.Net\assembly\GAC_64\System.EnterpriseServices\v4.0_4.0.0.0__b03f5f7f11d50a3a\System.EnterpriseServices.dll" /R:"C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.IdentityModel\v4.0_4.0.0.0__b77a5c561934e089\System.IdentityModel.dll" /R:"C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.Configuration\v4.0_4.0.0.0__b03f5f7f11d50a3a\System.Configuration.dll" /R:"C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.Activities\v4.0_4.0.0.0__31bf3856ad364e35\System.Activities.dll" /out:"C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files\oc\88c6cdde\6b37fcc6\App_global.asax.v_2hcqbe.dll" /D:DEBUG=1 /debug+ /nowarn:41008,40000,40008 /define:_MYTYPE=\"Web\" /imports:Microsoft.VisualBasic,System,System.Collections,System.Collections.Generic,System.Collections.Specialized,System.ComponentModel.DataAnnotations,System.Configuration,System.Linq,System.Text,System.Text.RegularExpressions,System.Web,System.Web.Caching,System.Web.DynamicData,System.Web.SessionState,System.Web.Security,System.Web.Profile,System.Web.UI,System.Web.UI.WebControls,System.Web.UI.WebControls.WebParts,System.Web.UI.HtmlControls,System.Xml.Linq /warnaserror- /optionInfer+  "C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files\oc\88c6cdde\6b37fcc6\App_global.asax.v_2hcqbe.0.vb" "C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files\oc\88c6cdde\6b37fcc6\App_global.asax.v_2hcqbe.1.vb"

【问题讨论】:

  • 我首先想到的是:你检查了正确的目标框架吗?
  • 在我的机器上是 4.6。我在服务器上也有这个
  • 我在 .net45 appdomain 下设置了 Web 应用
  • 您的服务器上应该有一些组装差异或错误。首先,如果可能的话,用不同的选项检查您在另一台服务器上的应用程序。
  • 查看我的解决方案here

标签: asp.net iis


【解决方案1】:

从 web.config 文件中删除 compilers 标签:

<compilers>
    <compiler language="c#;cs;csharp" extension=".cs" type="Microsoft.CodeDom.Providers.DotNetCompilerPlatform.CSharpCodeProvider,  Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Version=1.0.4.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" warningLevel="4" compilerOptions="/langversion:6 /nowarn:1659;1699;1701" />
    <compiler language="vb;vbs;visualbasic;vbscript" extension=".vb"  type="Microsoft.CodeDom.Providers.DotNetCompilerPlatform.VBCodeProvider,     Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Version=1.0.4.0,     Culture=neutral, PublicKeyToken=31bf3856ad364e35" warningLevel="4"     compilerOptions="/langversion:14 /nowarn:41008     /define:_MYTYPE=\&quot;Web\&quot; /optionInfer+" />
</compilers>

【讨论】:

  • 这个答案帮助了我无数次。
  • 请您解释一下。 @Meer
  • 如果我删除此行会影响项目中的某处?
  • 不,不会对项目造成影响。 @BrijeshMavani
  • 这个奇怪的东西帮助了我。我仍然不明白为什么它从今天开始在 webconfig 文件中进行编译....
【解决方案2】:

解决方案在本地为我工作,但从服务器我收到此错误“编译器失败,错误代码 255”。

通过从我的解决方案中卸载 nuget 包“Microsoft.CodeDom.Providers.DotNetCompilerPlatform”并重新部署,它对我有用。

【讨论】:

  • 这解决了我的问题。我的错误是“编译器错误消息编译器失败,错误代码 -532462766”,但解决方案相同
  • The compiler failed with error code -2146232576. 也可以通过删除这个包来修复。
【解决方案3】:

我将 Win2k12 R2 作为桌面操作系统运行,昨天将 vs2k13 升级到 vs2k15,之后我的一些 .NET 4.5 Web 应用程序停止工作,出现上述错误“编译器失败,错误代码 255”,谷歌搜索了一下我想出了以下内容;

https://support.microsoft.com/en-us/kb/3118750

我是上述文章中的场景 #2 - 最终我只是卸载了 KB3098779 和 KB3097997,重新启动,应用程序再次运行,快乐的日子。

【讨论】:

  • 我从头开始重新安装了我的服务器。我将应用所有更新包并仔细添加我需要的服务器角色。如果我有同样的问题,那么我将求助于删除您列出的这两个 KB。谢谢
  • 内存不足? -- 我在作为客户端演示站点部署到的低规格虚拟服务器上收到此错误。我关闭了在 RDC 会话中打开的所有应用程序(包括 Chrome!)。没有其他更改,该站点立即运行。这让我相信这是一个内存错误。
  • 我的问题是一个
【解决方案4】:

将项目迁移到 .net 4.6.1 也有帮助。

【讨论】:

    【解决方案5】:

    我只是右键单击解决方案并选择“清洁解决方案”并单击。 这对我有用。

    【讨论】:

      【解决方案6】:

      对我来说,在删除与 applicationInsights 相关的所有引用并从包中删除所有文件后,它得到了修复。

      【讨论】:

        【解决方案7】:

        同样的问题。通过在IIS中删除并重新创建网站来解决。

        【讨论】:

        • 你的平台是什么?我不知道 MS 是如何让这个问题持续存在的
        【解决方案8】:

        就我而言,我不得不重新安装 nuget 包。Update-Package -reinstall

        每进行几次重建,我都会返回 255 错误。删除 temp 和 obj 文件夹,重新启动 IIS 只是临时帮助。幸运的是,我在 Compiler Output 中找到了一些 nuget 包的名称,这引导我进行了另一次尝试..

        【讨论】:

          【解决方案9】:

          如果你删除以下Roslyn相关的包,可能会解决你的问题。

          Microsoft.CodeDom.Providers.DotNetCompilerPlatform
          Microsoft.Net.Compilers

          我可以处理我所面临的问题。

          你可以找到我的解决方案here

          【讨论】:

          • 如果此链接中断,您的回答将无济于事。请至少在此处包含摘要
          【解决方案10】:

          如果其他人遇到这种情况,我只需给出两分钱的答案,这可能是一个明显的解决方案......

          对我来说,这发生在我更新了项目中使用的 DotNetCompilerPlatform 之后,但它在我的开发机器上运行良好 - 当我尝试部署到我们的生产服务器时,我开始收到此错误。

          在我的情况下,其他答案都没有意义 - 我在生产机器上没有 NuGet,我无法清理解决方案等。但是我确实发现 CSC.EXE 甚至无法运行all - 从命令行执行时抛出 TypeLoadException。重启也没有用。

          幸运的是,答案很简单——我用来将文件复制到生产服务器的同步工具不包括 EXE 文件,因此没有部署新的 CSC.EXE(和一些其他文件)。一旦我部署了正确版本的 CSC.EXE,它就可以正常工作。我还通过运行CSC.EXE -version 验证了它

          【讨论】:

            【解决方案11】:

            重启服务器(win-2012)解决了这个问题。

            【讨论】:

              【解决方案12】:

              当我尝试将调试器附加到仍在启动的应用程序时,我似乎遇到了这些错误。

              当我收到此错误(The compiler failed with error code 1.The compiler failed with error code 255.)时,我会执行以下操作:

              • 清洁解决方案
              • 停止应用程序池
              • 构建解决方案
              • 启动应用程序池

              然后我让应用程序完全启动,然后如果需要,附加调试器。

              【讨论】:

                猜你喜欢
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 2015-09-13
                • 1970-01-01
                • 2010-12-31
                • 1970-01-01
                • 2018-02-17
                相关资源
                最近更新 更多