另一个奇怪的ASP.net错误:编译器失败,错误代码为255

时间:2015-11-29 23:03:45

标签: asp.net iis

我已尝试过other posts

的所有解决方案

这个简单的Web应用程序可以在我的笔记本电脑上运行: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"

12 个答案:

答案 0 :(得分:31)

从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>

答案 1 :(得分:12)

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

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

答案 2 :(得分:7)

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

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

我在上面的文章中是场景#2 - 最终我刚刚卸载了KB3098779和KB3097997,重启并且应用程序再次运行,欢乐时光。

答案 3 :(得分:6)

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

答案 4 :(得分:5)

我只需点击解决方案并选择&#34;清洁解决方案&#34;并单击。 这对我有用。

答案 5 :(得分:2)

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

答案 6 :(得分:1)

在我的情况下,我不得不重新安装nuget包.. Update-Package -reinstall

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

答案 7 :(得分:1)

如果您删除以下@ApiObject(description = "What the object is for.") @JsonIgnoreProperties(ignoreUnknown = true) public class CodeVerification { @ApiObjectField(description = "The code which is to be verified.") @NotBlank(message = "mandatory") private final String code; @ApiObjectField(description = "The masked mobile phone number to which the code was verfied against.") private final String maskedMobileNumber; public codeVerification(@JsonProperty("code") String code, String maskedMobileNumber) { this.code = code; this.maskedMobileNumber = maskedMobileNumber; } public String getcode() { return code; } public String getMaskedMobileNumber() { return maskedMobileNumber; } } 相关软件包,则可能会解决您的问题。

  

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

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

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

答案 8 :(得分:1)

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

答案 9 :(得分:1)

只需输入我的 2 美分答案,就可能是一个显而易见的解决方案,以防其他人遇到此问题...

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

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

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

对其进行了验证

答案 10 :(得分:0)

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

答案 11 :(得分:0)

当我尝试将调试器连接到应用程序时,我似乎得到了这些错误。

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

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

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