您的位置:首页 > 大数据 > 人工智能

[转]error MSB4018: The "GenerateResource" task failed unexpectedly

2017-04-11 11:33 501 查看
本文转自:https://github.com/Microsoft/msbuild/issues/364

After uninstall Visual Studio 2015 Update 1 RC and reinstall VS 2015 RTM I can't compile any of my projects any more. Following error occurs:

1>C:\Program Files (x86)\MSBuild\14.0\bin\Microsoft.Common.CurrentVersion.targets(2718,5): error MSB4018: The "GenerateResource" task failed unexpectedly.
1>C:\Program Files (x86)\MSBuild\14.0\bin\Microsoft.Common.CurrentVersion.targets(2718,5): error MSB4018: System.NullReferenceException: Object reference not set to an instance of an object.


[/code]
https://github.com/Microsoft/msbuild/pull/314

This fixes the scenario of switching builds using RTM and Update 1.

Normal usage this should only be for an uninstall scenario since MSBuild is typically in the GAC,

but in cases of a checked in toolset or using the open source version we should be backwards compatible.

This is just renaming the fields back for the cache classes.

https://github.com/Microsoft/msbuild/pull/466

Update ResGen Serialization Compat for RTM and U1

602201c When reverting the CodeFormatter private field name changes (#314), the Dependencies class was missed. This causes an incompatibility going from Update 1 back to RTM and causes a null ref. This change fixes the compat issue (rename the field) and updates the serialization version to ensure U1 -> U2 works as expected.

Rename field for internal build.

c863538 Looks like the field was renamed for STANDALONEBUILD but not otherwise.Correcting this.

http://stackoverflow.com/questions/31608319/msbuild-error-msb4018-in-vs2015-the-link-task-failed-unexpectedly

9down voteaccepted
I've managed to fix this issue myself and would like to document the solution here for future reference.

The following error was caused by an empty XML element in the project file:

MSB4018: System.NullReferenceException: Object reference not set to an instance of an object.

The empty element was accessed by the 'Link' task, which just failed:

MSB4018: 'The "Link" task failed unexpectedly.

Removing the respective element fixed the issue:

<Link><GenerateDebugInformation></GenerateDebugInformation></Link>

Hint: As it can be seen in other posts, many of the MSB4018 errors seem to be related to project files containing unexpected values.

2down vote
Another solution is to delete all generated files from the last build through an explorer window.

Delete all files in:

.\Project\bin

.\Project\obj

While you can "Clean" or "Rebuild" directly through Visual Studio, this only captures some of the files. By forcing to recompile all files, all memory locations will now correctly align and the issue should be resolved.

https://blogs.msdn.microsoft.com/visualstudio/2013/07/24/msbuild-is-now-part-of-visual-studio/?replytocom=73743

MSBuild and its Toolset now Version with Visual Studio
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐