2010-04-23 13 views
7

Nel nostro ambiente di sviluppo, nessun utente ha diritti di amministratore. Pertanto, non è possibile installare MSBuild.CommunityTasks senza ottenere l'amministratore.Utilizzare le attività della comunità msbuild senza installare

Quello che mi chiedo è simile a NAnt, cioè è possibile includere i file nella directory della soluzione e fare semplicemente riferimento da lì? In questo modo, non importa se la persona lo ha installato, quando eseguono il checkout dell'ultimo codice, i file della comunità di msbuild verranno forniti e la soluzione verrà creata.

\SolutionDir\{solution}.sln 
\SolutionDir\Project\{files} 
\SolutionDir\MSBuild.Community\files 

risposta

7

Sì, è possibile. Basta estrarre i file e posizionarli da qualche parte e quindi utilizzare MSBUILD IMPORT per estrarli nel file di progetto. Dovrai importare i file dei target.

+0

questa è generalmente una pratica accettata? – mickyjtwin

+1

Sì, è bello farlo. Basta memorizzare quei file nel controllo del codice sorgente. –

+4

sicuramente li memorizza nel controllo del codice sorgente. Vuoi assicurarti che le build siano ripetibili. –

0

Preet's risposta è azzeccata, ma ci sono alcune complessità nell'utilizzo dell'importazione. Per far funzionare correttamente l'importazione, ho dovuto seguire lo answer delineato da Tom.

In particolare,

<PropertyGroup> 
    <MSBuildCommunityTasksPath>location of community files</MSBuildCommunityTasksPath> 
</PropertyGroup> 

<Import Project="$(MSBuildCommunityTasksPath)\MSBuild.Community.Tasks.Targets"/> 

Tale articolo stabilisce il percorso per il file target.

Problemi correlati