2009-05-11 20 views
5

tengo un proyecto de instalación y despliegue que, en nuestro servidor de compilación, informa lo siguiente en el resumen:de instalación de Visual Studio y la acumulación implementación falla sin errores

========== Volver a generar todo: 25 tuvieron éxito, 2 fallidos, 0 omiten ==========

no sé lo que los dos son que falló, aunque creo que uno de ellos es el proyecto porque vdproj si ejecuto la compilación sin el instalador no hay ningún error informado. Los mensajes del "archivo de empaquetado" coinciden con los resultados en mi PC, donde la construcción se completa con éxito.

Estoy convencido de que es algo del entorno, simplemente que no hay registros en ningún lado que digan cuál fue el problema, solo el número en el resumen.

Aún más extraño es que los archivos setup.exe y myapp.msi parecen estar bien generados. No puedo determinar qué proyectos fallaron, porque no se menciona un proyecto fallido. Todo lo que sé es que si construyo la solución excluyendo el proyecto de configuración, el resumen dice que no hubo errores.

¿Alguien puede pensar en algo para comprobar?

Respuesta

11

La respuesta al final fue que se trata de un fallo conocido: https://connect.microsoft.com/VisualStudio/feedback/ViewFeedback.aspx?FeedbackID=317870

La respuesta es modificar los archivos de proyecto (* .csproj) que contiene LINQ a SQL dbml archivos para eliminar un poco de materia, de la siguiente manera:

  1. Cerrar VS 2008.
  2. Abrir el archivo de proyecto que contiene el elemento LINQ To SQL en el Bloc de notas.
  3. Retire las siguientes líneas:
    [ItemGroup]
    [Servicio include = "{3259AA49-8AA1-44D3-9025-A0B520596A8C}" /] se

El Proyecto [ItemGroup /] Configuración ahora compila con éxito. Sin embargo, si hace doble clic en el archivo DBML para abrir el diseñador en VS 2008, el proyecto de instalación dejará de volver a crearse. Las líneas anteriores no se vuelven a agregar al archivo de proyecto , pero el proyecto de instalación dejará de construir de todos modos. Solo reinicie VS 2008 y volverá a funcionar - hasta que abra el diseñador de DBML nuevamente. Una vez que el proyecto de instalación falla debido a este problema que nunca construir con éxito hasta después de reiniciar VS 2008.

final encontré la respuesta (o al menos el enlace a la respuesta) de la MS Connect forum topic. Aquí está el documented workaround.

+0

Otra solución incluida en esta página de errores de Microsoft funcionó para mí: haga clic con el botón derecho en la solución y haga clic en "Limpiar solución" en Visual Studio. –

+1

Puede editar un archivo csproj en VS sin cerrar la solución: 1. desde el menú contextual del proyecto descargue el proyecto, 2. desde el menú contextual abra el archivo csproj en VS, 3. edite y guarde, 4. desde el menú contextual reabrir el proyecto – Richard

0

(usted no dijo qué tipo de fabricación del servidor que tiene. Porque etiquetado como ".net" Voy a asumir que usted está utilizando TFS y Generar equipo.)

Generar equipo utiliza MSBuild (él está realmente MSBuild). MSBuild no puede compilar archivos vdproj. Solo Visual Studio puede hacer eso.

Por lo tanto, si incluye soluciones que incluyen archivos vdproj, fallarán. (Consulte su registro de compilación alrededor de los proyectos de vdproj para ver si fallaron.)

Una forma de evitar que estos errores se registren es crear una configuración compilada para su Team Build que no incluya sus archivos vdproj (si los proyectos fallidos realmente te molestan).

La mejor manera de obtener sus archivos msi y exe es ejecutar Visual Studio en sus proyectos vdproj. Agregue un destino personalizado después de que la construcción haya finalizado y llame a Visual Studio manualmente en su proyecto. (No sé por qué se están generando sus archivos msi y exe a menos que esté haciendo esto).

Como alternativa, considere Windows Installer XML (WIX). La versión 3 (que está muy cerca del lanzamiento completo y tiene una salida beta estable) usa MSBuild. Esto significa que sus soluciones se pueden compilar a través de Team Build sin ninguna acción especial. El único inconveniente es que WIX no puede apuntar a 'Cualquier CPU', pero puede ser parte de un objetivo de Nivel de Solución de 'Cualquier CPU', siempre que se dirija a una plataforma específica.

+0

El servidor de compilación en sí es FinalBuilder, aunque eso es discutible aquí porque el problema ocurrió al construir VS en la máquina del servidor de compilación. –

0

Sí, he tenido esto antes.

No

seguro acerca de su puesta en marcha, pero trate de esto es apropiado:

En primer lugar, haga clic en el archivo de solución> Propiedades> Configuración

En allí, utilizar las cajas de acumulación de garrapatas a experimentar con la cual proyectos construidos juntos, y que no.

Además, en su sistema de archivos, elimine las carpetas de depuración/liberación para todos sus proyectos.

Finalmente, en mi experiencia, este error generalmente es causado por un web.config dañado/faltante.

quiero saber cómo vas

Cuestiones relacionadas