Führen Sie msbuild Foo.sln /t:Rebuild /v:diag
(von C:\Program Files (x86)\MSBuild\12.0\bin
) aus, um Ihre Lösung von der Befehlszeile aus zu erstellen und etwas mehr Details zu erhalten. Suchen Sie dann die .csproj.
, die die Warnung protokolliert, und überprüfen Sie deren Verweise sowie die Verweise anderer Projekte, die dieselbe gemeinsame Assembly mit unterschiedlichen Versionen verwenden.
Bearbeiten: Sie können die Build-Verbosität auch direkt in VS2013 festlegen. Gehen Sie zu Tools
> Optionen
, dann zu Projekte und Lösungen
und setzen Sie die MSBuild-Verbisosität auf Diagnostic
.
Bearbeiten: Einige Klarstellungen, da ich gerade selbst eine gefunden habe. In meinem Fall wurde die Warnung verursacht, weil ich eine Referenz über das Resharper-Prompt hinzugefügt habe, anstatt den Dialogfeld "Referenz hinzufügen" zu verwenden, was dazu führte, dass sie ohne Versionsnummer hinzugefügt wurde, obwohl sowohl v4 als auch v12 zur Auswahl standen.
vs
Im MSBuild-Protokoll mit /v:diag
-Verbosität sah es wie folgt aus, wobei Details darüber gegeben wurden, welche zwei Referenzen in Konflikt standen:-
Es gab einen Konflikt zwischen
"Microsoft.Build.Framework, Version=4.0.0.0, ..." und
"Microsoft.Build.Framework, Version=12.0.0.0, ...". (TaskId:16)
"Microsoft.Build.Framework, Version=4.0.0.0, ..." wurde gewählt, weil es primär war und
"Microsoft.Build.Framework, Version=12.0.0.0, ..." nicht. (TaskId:16)
Verweise, die von "Microsoft.Build.Framework, Version=4.0.0.0, ..." abhängen
[C:\...\v4.5.1\Microsoft.Build.Framework.dll]. (TaskId:16)
C:\...\v4.5.1\Microsoft.Build.Framework.dll (TaskId:16)
Projektdatei-Elemente, die den Verweis "C:\...\v4.5.1\Microsoft.Build.Framework.dll" verursachten. (TaskId:16)
Microsoft.Build.Framework (TaskId:16)
Verweisenden, der von "Microsoft.Build.Framework, Version=12.0.0.0, ..." abhängen
[C:\...\v12.0\Microsoft.Build.Framework.dll]. (TaskId:16)
C:\...\v12.0\Microsoft.Build.dll (TaskId:16)
Projektdatei-Elemente, die den Verweis "C:\...\v12.0\Microsoft.Build.dll" verursachten. (TaskId:16)
Microsoft.Build, Version=12.0.0.0, ... (TaskId:16)
C:\...\v12.0\Microsoft.Build.Engine.dll (TaskId:16)
Projektdatei-Elemente, die den Verweis "C:\...\v12.0\Microsoft.Build.Engine.dll" verursachten. (TaskId:16)
Microsoft.Build, Version=12.0.0.0, ... (TaskId:16)
C:\Program Files (x86)\MSBuild\12.0\bin\Microsoft.Common.CurrentVersion.targets(1697,5): Warnung MSB3277:
Konflikte zwischen unterschiedlichen Versionen derselben abhängigen Assembly gefunden, die nicht aufgelöst werden konnten.
Diese Referenzkonflikte werden im Buildprotokoll aufgeführt, wenn die Protokoll-Verbosität auf detailliert eingestellt ist.
[C:\Users\Ilya.Kozhevnikov\Dropbox\BuildTree\BuildTree\BuildTree.csproj]