2009-03-11 14 views
19

Credo che il problema sia documentato here e sembra che potrebbe essere un bug in Visual Studio, ma mi chiedo se qualcuno sa di una soluzione alternativa.

Fondamentalmente ho le seguenti 2 righe (tra le altre cose) una subito dopo l'altra nell'evento pre-build.

"C:\WINDOWS\Microsoft.NET\Framework\v3.5\MSBuild.exe" /p:configuration=Release;platform=x86 /t:rebuild "$(SolutionDir)Folder1\Project1.csproj" 

"C:\WINDOWS\Microsoft.NET\Framework\v3.5\MSBuild.exe" /p:configuration=Release;platform=x86 /t:rebuild "$(SolutionDir)Folder2\Folder3\Project2.csproj" 

Il primo ha successo e l'altro non riesce dicendo che "Il comando "" C: \ WINDOWS \ Microsoft.NET \ Framework \ v3.5 \ MSBuild.exe"/p: configurazione = uscita; piattaforma = x86/t: ricostruire "* * Non definito Folder2 \ Folder3 \ Project2.csproj"" terminato con il codice 1.

(spazio inserito tra Astrisk causa di formattazione SO)

Edit: capito il problema era che uno degli altri progetti con la stessa riga della sua preinstallazione non è riuscito, poiché MSBuild stesso non conosce le macro

+0

autore FYI: collegamento interrotto (feedback VS). – yzorg

risposta

0

Non specificare se questo accade per molti progetti o solo uno o due.

Se è solo in uno o due progetti, una soluzione temporanea potrebbe essere quella di sostituire $ (SolutionDir) con il percorso esplicito che Cartella2 si trova in Per esempio, qualcosa come:.

"C:\WINDOWS\Microsoft.NET\Framework\v3.5\MSBuild.exe" /p:configuration=Release;platform=x86 /t:rebuild "C:\AllSolutions\ExampleSolutions\Folder2\Folder3\Project2.csproj" 

ma con il percorso corretto per il tuo progetto.

39

Ho risolto questo problema sostituendo tutto $(SolutionDir) con $(ProjectDir)..\..

Era dovuto a MSBuild che eseguiva ogni progetto in modo indipendente e non la soluzione. Ha funzionato bene in VS2010, ma non sul server di build.

+6

Non riesco a credere che questo sia ancora un problema nel 2015 – drzaus

+0

in modo abbastanza esilarante, ho capito anche io (http://stackoverflow.com/a/20846447/1037948) circa 2 settimane dopo di te, ma di recente mi sono dimenticato di conoscevo la risposta e finì qui – drzaus

+0

questo perché non è un problema, stai costruendo il csproj, non la soluzione –

Problemi correlati