MSBuild失败,错误出现在;";错误代码为AL1019的任务

MSBuild失败,错误出现在;";错误代码为AL1019的任务,msbuild,msbuild-task,Msbuild,Msbuild Task,我们当前在使用MSBuild编译解决方案时遇到问题。生成在执行“AL.exe”链接器的任务“AL”内的资源链接步骤上随机失败 构建日志显示以下执行流 4>Target "GenerateSatelliteAssemblies" in file "C:\Program Files (x86)\MSBuild\14.0\bin\Microsoft.Common.CurrentVersion.targets" from project "C:\source\MyProject.csproj" (

我们当前在使用MSBuild编译解决方案时遇到问题。生成在执行“AL.exe”链接器的任务“AL”内的资源链接步骤上随机失败

构建日志显示以下执行流

4>Target "GenerateSatelliteAssemblies" in file "C:\Program Files (x86)\MSBuild\14.0\bin\Microsoft.Common.CurrentVersion.targets" from project "C:\source\MyProject.csproj" (target "CreateSatelliteAssemblies" depends on it):
4>Building target "GenerateSatelliteAssemblies" completely.
4>Output file "obj\Debug\de\MyProject.dll" does not exist.
4>Task "MakeDir"
4>Done executing task "MakeDir".
4>Task "AL"
4>  C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.6 Tools\AL.exe /culture:de /out:obj\Debug\de\MyProject.resources.dll /template:obj\Debug\MyProject.dll /embed:obj\Debug\MyProject.SomeResource.de.resources
4>  Microsoft (R) Assembly Linker version 14.0.0081.0
4>  Copyright (C) Microsoft Corporation. All rights reserved.
4>  
4>Done executing task "AL".
4>Done building target "GenerateSatelliteAssemblies" in project "MyProject.csproj".
4>Target "GenerateSatelliteAssemblies" in file "C:\Program Files (x86)\MSBuild\14.0\bin\Microsoft.Common.CurrentVersion.targets" from project "C:\source\MyProject.csproj" (target "CreateSatelliteAssemblies" depends on it):
4>Building target "GenerateSatelliteAssemblies" completely.
4>Output file "obj\Debug\en\MyProject.resources.dll" does not exist.
4>Task "MakeDir"
4>Done executing task "MakeDir".
4>Task "AL"
4>  C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.6 Tools\AL.exe /culture:en /out:obj\Debug\en\MyProject.resources.dll /template:obj\Debug\MyProject.dll /embed:obj\Debug\MyProject.SomeResource.en.resources
4>  Microsoft (R) Assembly Linker version 14.0.0081.0
4>  Copyright (C) Microsoft Corporation. All rights reserved.
4>  
4>ALINK : error AL1019: Metadata failure while creating assembly -- The volume for a file has been externally altered so that the opened file is no longer valid.
4>  The command exited with code 1.
4>Done executing task "AL" -- FAILED.
4>Done building target "GenerateSatelliteAssemblies" in project "MyProject.csproj" -- FAILED.

对我来说,完全不清楚错误代码AL1019是什么意思。MSDN错误代码列表也没有帮助。

AL错误代码不是根本原因,“文件的卷已被外部更改,因此打开的文件不再有效”是错误原因。这是一个操作系统错误(
错误\u文件\u无效1006(0x3EE)
)。例如,可能与某些外部(可移动)介质不再可用等有关。YMMV.您正在为此使用网络资源吗?源代码是否在某个共享驱动程序上?代码直接位于系统驱动器上(c:),文件访问仅在生成期间发生在该驱动器上(通过Process Monitor-Sysinternals进行检查)。在此网站中,您缺少/win32res。url应该会有帮助,但不会完全修复它:/因为错误来自Windows或文件系统,所以您应该查看它是否也发生在其他计算机上,并且您可以查看事件日志,看看Windows是否注意到在同一时间发生了奇怪的事情。正如@Christian.K所提到的,根本原因与AL无关。链接器从操作系统中获取该错误,并有效地将其作为自己的错误重新引用。把AL1019看成是:写文件时出错了,我真的不知道什么。一个主要的嫌疑犯也是AV软件,因为这些软件会一直干扰构建。
4>Target "GenerateSatelliteAssemblies" in file "C:\Program Files (x86)\MSBuild\14.0\bin\Microsoft.Common.CurrentVersion.targets" from project "C:\source\MyProject.csproj" (target "CreateSatelliteAssemblies" depends on it):
4>Building target "GenerateSatelliteAssemblies" completely.
4>Output file "obj\Debug\de\MyProject.dll" does not exist.
4>Task "MakeDir"
4>Done executing task "MakeDir".
4>Task "AL"
4>  C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.6 Tools\AL.exe /culture:de /out:obj\Debug\de\MyProject.resources.dll /template:obj\Debug\MyProject.dll /embed:obj\Debug\MyProject.SomeResource.de.resources
4>  Microsoft (R) Assembly Linker version 14.0.0081.0
4>  Copyright (C) Microsoft Corporation. All rights reserved.
4>  
4>Done executing task "AL".
4>Done building target "GenerateSatelliteAssemblies" in project "MyProject.csproj".
4>Target "GenerateSatelliteAssemblies" in file "C:\Program Files (x86)\MSBuild\14.0\bin\Microsoft.Common.CurrentVersion.targets" from project "C:\source\MyProject.csproj" (target "CreateSatelliteAssemblies" depends on it):
4>Building target "GenerateSatelliteAssemblies" completely.
4>Output file "obj\Debug\en\MyProject.resources.dll" does not exist.
4>Task "MakeDir"
4>Done executing task "MakeDir".
4>Task "AL"
4>  C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.6 Tools\AL.exe /culture:en /out:obj\Debug\en\MyProject.resources.dll /template:obj\Debug\MyProject.dll /embed:obj\Debug\MyProject.SomeResource.en.resources
4>  Microsoft (R) Assembly Linker version 14.0.0081.0
4>  Copyright (C) Microsoft Corporation. All rights reserved.
4>  
4>ALINK : error AL1019: Metadata failure while creating assembly -- The volume for a file has been externally altered so that the opened file is no longer valid.
4>  The command exited with code 1.
4>Done executing task "AL" -- FAILED.
4>Done building target "GenerateSatelliteAssemblies" in project "MyProject.csproj" -- FAILED.