MSBuild-Fehler MSB4018 in VS2015: Die Task "Link" ist unerwartet fehlgeschlagen

8

Nach dem Upgrade einer Lösung mit 25 Projekten von VS2012 Update 4 auf VS2015 RTM (14.0.23107.0) erhalte ich beim Erstellen eines der Projekte den folgenden Fehler:

(...) MSB4018: 'Die Aufgabe "Link" ist unerwartet fehlgeschlagen. (...) System.NullReferenceException: Objektreferenz wurde nicht auf eine Instanz eines Objekts gesetzt. ' (...)

Hier die vollständige Ausgabe:

%Vor%

Ich habe bereits mehrere Lösungsvorschläge für MSB4018 ohne Erfolg ausprobiert. Der Fehler 'Die Aufgabe' Link 'ist unerwartet fehlgeschlagen' wurde von Google noch nicht einmal indiziert. Ich vermute, dass dieses Problem irgendwie mit dem Typ des Projekts zusammenhängt, da es das einzige Projekt in der Lösung ist, das als Ressourcen-DLL verwendet wird (d. H. Ohne Eingangspunkt usw.). Die einzigen Änderungen, die von VS2015 an der Projektdatei vorgenommen wurden, sind " ToolsVersion: 4.0 = & gt; 14.0 " und " PlatformToolset: v110_xp = & gt; v140_xp ".

Hat jemand dafür eine Lösung?

    
alex.dev 24.07.2015, 10:36
quelle

3 Antworten

11

Ich habe es geschafft, dieses Problem selbst zu beheben und möchte die Lösung hier für zukünftige Referenz dokumentieren.

Der folgende Fehler wurde durch ein leeres XML-Element in der Projektdatei verursacht:

  • MSB4018: System.NullReferenceException: Objektreferenz wurde nicht auf eine Instanz eines Objekts festgelegt.

Auf das leere Element wurde von der Task 'Link' zugegriffen, die gerade fehlgeschlagen ist:

  • MSB4018: 'Die Aufgabe "Link" ist unerwartet fehlgeschlagen.

Durch das Entfernen des entsprechenden Elements wurde das Problem behoben:

%Vor%

Hinweis: Wie es in anderen Posts zu sehen ist, scheinen viele der MSB4018-Fehler mit Projektdateien zusammenhängen, die unerwartete Werte enthalten.

    
alex.dev 30.07.2015, 09:15
quelle
5

VS 2015: Lösung des Problems ist wie folgt: Gehe zu:

Projekteigenschaften- & gt; Linker- & gt; Debugging- & gt; Generiere Debug-Info,

Legen Sie diese Eigenschaft entweder als Optimieren für das Debugging (/ DEBUG) oder Nein

fest

Hinweis: Ich habe ein ähnliches Problem beobachtet, als es leer war (nicht gesetzt).

Es hat für mich funktioniert.

Ich hoffe, diese Information wäre hilfreich.

Viel Glück:).

    
xs2harpreet 04.02.2016 11:48
quelle
3

Eine andere Lösung besteht darin, alle generierten Dateien aus dem letzten Build durch ein Explorer-Fenster zu löschen.

Löschen Sie alle Dateien in:

. \ Projekt \ bin

. \ Projekt \ obj

Während Sie "Clean" oder "Rebuild" direkt über Visual Studio erstellen können, werden nur einige der Dateien erfasst. Durch das Erzwingen, alle Dateien neu zu kompilieren, werden jetzt alle Speicherorte korrekt ausgerichtet und das Problem sollte behoben werden.

    
Kevin K 11.06.2016 17:26
quelle