Solucionar problemas de Team Foundation Build para proyectos web
Actualización: noviembre 2007
En la siguiente sección se describen escenarios de solución de problemas comunes que pueden surgir al generar proyectos Web con Team Foundation Build.
Los proyectos Web no se generan
La configuración de generación debe estar establecida en ".NET" sólo para la generación de proyectos Web, y en "Plataformas mixtas" para la generación de una combinación de proyectos Web y otros proyectos administrados de Visual Studio.
Si ha especificado una configuración de generación incorrecta, se registra la siguiente advertencia en el archivo de registro de generación:
Warning MSB4126: The specified solution configuration "Release|Any CPU" is invalid. Specify a valid solution configuration using the Configuration and Platform properties (e.g, MSBuild.exe Solution.sln /p:Configuration=Debug /p:Platform="Any CPU") or leave those properties blank to use the default solution configuration.
Solución
Cambie la configuración a "Plataformas mixtas" o ".NET" en la definición de compilación. Asimismo, cuando cree un nuevo archivo TFSBuld.proj, seleccione ".NET" o "Plataformas mixtas" como configuración en la página Seleccione las configuraciones para generar del Asistente para crear archivos de proyecto de MSBuild. Para obtener más información, vea Cómo: Crear una definición de compilación.
Estructuras de directorio en conflicto
De forma predeterminada, al crear un proyecto Web en Visual Studio, los archivos de la solución y los archivos del sitio Web se almacenan en dos ubicaciones diferentes. Para un proyecto Web, "SampleWS", los archivos de la solución se guardan en:
- <raíz>:\Documents and Settings\usuario\Mis documentos\Visual Studio 2008\Projects\SampleWS
Los archivos del sitio Web se guardan en:
- <root>:\Documents and Settings\usuario\Mis documentos\Visual Studio 2008\Websites\SampleWS
Un archivo de una solución de proyecto Web contiene una propiedad PhysicalPath que señala a la carpeta del sitio Web en la que hay que buscarlo para la compilación. Sin embargo, cuando una solución de proyecto Web está protegida en el control de código fuente, el archivo de la solución se almacena en la carpeta raíz y los sitios Web se almacenan en las subcarpetas inmediatas. Como consecuencia de ello, las propiedades PhysicalPath del archivo de la solución controlada por código fuente se deshabilitan. Durante la compilación, Team Foundation Build sincroniza los archivos de proyecto web utilizando la estructura de carpetas del control de versiones. Se producen errores de compilación porque la estructura de directorios en el control de versiones difiere de la estructura de carpetas de la solución.
Si hay estructuras de directorio en conflicto en el archivo de la solución y en el control de código fuente, se registra el siguiente error en el archivo de registro de generación:
ASPNETCOMPILER(0,0): error 1003: El directorio d:\<directorio de generación>\MyTeamProject\SampleWS\WebSites\SampleWS\' no existe.
Solución
Cree una solución en blanco en Visual Studio y, a continuación, cree los sitios Web en la misma ubicación que la solución.
Modifique las propiedades Debug.AspNetCompiler.PhysicalPath y Release.AspNetCompiler.PhysicalPath en el archivo de la solución de forma que señalen a la carpeta del sitio Web controlado por código fuente.
Vea también
Otros recursos
Administrar Team Foundation Build