Sto cercando di aggiornare il nostro buildserver (jenkins) da Visual Studio 2015 al 2017. Stiamo costruendo tramite MS-Build. Ho scaricato e installato gli strumenti MS-Buld come descritto in questa risposta . Se compilo i miei progetti ottengo un errore che Microsoft.WebApplication.targets
non è stato trovato.
Errore dettagliato:
error MSB4226: The imported project "C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\MSBuild\Microsoft\VisualStudio\v15.0\WebApplications\Microsoft.WebApplication.targets"
Ho eseguito una ricerca nella directory MS-Build:
PS C:\Program Files (x86)\MSBuild> dir -Recurse -Filter "Microsoft.WebApplication.targets"
Directory: C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v11.0\WebApplications
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a---- 11.01.2012 00:23 19654 Microsoft.WebApplication.targets
Directory: C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v12.0\WebApplications
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a---- 22.07.2013 01:25 19995 Microsoft.WebApplication.targets
Directory: C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v14.0\WebApplications
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a---- 06.07.2015 21:55 20118 Microsoft.WebApplication.targets
Directory: C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\WebApplications
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a---- 22.07.2013 01:25 19995 Microsoft.WebApplication.targets
Come si può vedere il file esiste per le vecchie versioni del compilatore, ma per la v15.0 manca.
Ho anche installato Visual Studio 2017 sul build-server. Il progetto riesce a costruire se compilo con Visual Studio 2017.
Qualche suggerimento su come risolvere questo problema? Una possibile soluzione è generare un collegamento simbolico dal C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v15.0\WebApplications
punto ai vecchi file v14.0 (che si trovano sotto C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v14.0\WebApplications
).
Grazie