Necesito un conjunto de tareas que deben ejecutarse exactamente una vez para la solución completa. Esto ejecutará tareas que modificarán cada proyecto para ejecutar un conjunto separado de tareas para cada proyecto. Lo habíamos hecho antes usando un proyecto separado para la solución que tenía las tareas de nivel de solución, pero queremos alejarnos de eso. ¿Alguien ha hecho esto o alguien tiene alguna sugerencia sobre cómo implementar esto?Realice una ejecución de destino una vez en el nivel de Solución en MSBuild
7
A
Respuesta
6
Como los archivos de la Solución no están en formato MSBuild, no se pueden extender ni personalizar fácilmente. Si desea tener más control sobre el proceso de compilación, deberá crear un archivo "msbuild" de "controlador" que reemplace su archivo de solución. Dentro de este archivo de controlador construiría todos los proyectos que necesitaba y realizaría algunas tareas adicionales. Usted haría esto usando el MSBuild task. Aquí hay una muestra que muestra cómo construir más de 1 proyecto.
<Project ...>
<ItemGroup>
<Projects Include="proj01.csproj"/>
<Projects Include="proj02.csproj"/>
<Projects Include="proj03.csproj"/>
</ItemGroup>
<Target Name="BuildAll">
<MSBuild Projects="@(Projects)" BuildInParallel="true" />
</Target>
</Project>
Por lo tanto, en su caso, simplemente ejecutaría las tareas antes de construir los proyectos. También tenga en cuenta que he especificado el valor true para BuildInParallel
, lo que indica que MSBuild puede intentar crear más de un proyecto a la vez.
Cuestiones relacionadas
- 1. setInterval() única función en ejecución una vez
- 2. Realice una consulta de búsqueda en Outlook
- 3. Visual Studio 2010: ¿Cómo publicar una aplicación web ASP.NET en una carpeta de destino con MSBUILD?
- 4. Realice una búsqueda en celdas ocultas
- 5. Paquete de destino de MSBuild no encontrado
- 6. Realice una inicialización prolongada en el servicio de Windows
- 7. Compilación de destino MSBuild sin dependencias
- 8. MSBUILD con archivos de solución con DefineConstants
- 9. Realice una tarea al desinstalar en android
- 10. Versión específica de destino de .NET con MSBuild
- 11. MSBuild no puede encontrar SGen al compilar una solución
- 12. MSBuild - Obteniendo el destino llamado desde la línea de comando
- 13. ¿La mezcla de tiempos de ejecución es una solución viable?
- 14. MSBuild - Establecer propiedades para la solución
- 15. Cómo llamar a un destino MSBuild anulado
- 16. ¿Cómo construir una solución para el entorno de 64 bits de destino?
- 17. Código de ejecución de iOS una vez al día
- 18. MSBuild: especificando un destino desde la línea de comando
- 19. ¿Puedo crear elementos de nivel de "Solución" en una plantilla de proyecto de Visual Studio?
- 20. proceso msbuild parada si un destino falla
- 21. Python: realice una operación en cada valor de diccionario
- 22. Carga de archivos a FTP están dañados una vez en destino
- 23. Cómo configurar la ruta de acceso de SGEN en Msbuild al framework de destino 3.5
- 24. ¿[HTML5 + jQuery] (no ASP.NET) + WCF es una solución válida para una aplicación web de nivel empresarial?
- 25. ¿Hay una manera simple (en Cocoa/iOS) para poner en cola una llamada a método para ejecutar una vez en el siguiente ciclo de ejecución?
- 26. ejecutar un destino personalizado msbuild desde VisualStudio
- 27. Cómo detener MSBuild _WPPCopyWebApplication limpieza de destino carpeta App_Data
- 28. Agregar elementos de nivel de solución en un paquete NuGet
- 29. problemas utilizando MSBUILD mediante línea de comandos para publicar haga clic una vez
- 30. ¿Cómo puedo usar la tarea de copia de MSBuild para copiar en varias carpetas de destino?
Esta es una idea interesante. Creo que esto también funcionará si quiero realizar algunas tareas adicionales antes de construir los proyectos. (Y esas tareas adicionales modificarán los proyectos ellos mismos.) – Chandam
La creación de estos archivos de compilación es un escenario muy común. Mucha gente prefiere escribir estos tipos de archivos de compilación usando la solución para compilaciones de producción. En mi caso, solo uso archivos de solución para Visual Studio, nunca para compilaciones reales. –
Sayed en este enfoque dice si mi proyecto 1 depende del proyecto 2, entonces ¿no construiría msbuild mi proyecto 2 dos veces, retrasando así el proceso de compilación? – Nikhil