Hola tengo servidor de compilación con TeamCity.
Mi proyecto es Sitecore de la Aplicación Web. Yo estoy usando el TDS (HedgehogDevelopment). Tengo el programa de instalación de configuración de generación en TeamCity con MS construir y parece funcionar cuando TDS proyecto está deshabilitado en construir el administrador de configuración.
Pero entonces enebled estoy consiguiendo el error neto

C:\Program Los Archivos
(x86)\MSBuild\HedgehogDevelopment\SitecoreProject\v9.0\HedgehogDevelopment.SitecoreProject.targets(310,
5): error MSB4036: El «TransformXml» la tarea no fue encontrado. Compruebe la
siguientes: 1.) El nombre de la tarea en el archivo de proyecto es el mismo que
el nombre de la clase de tarea. 2.) La tarea de la clase es «pública» y
implementa Microsoft.Construir.Marco.ITask de la interfaz. 3.) La tarea
es bien declarado en el archivo de proyecto, o en el
*.las tareas de los archivos que se encuentran en el «C:\Windows\Microsoft.NET\Framework64\v3.5» directorio. Proyecto
NetKey.TDSMaster\Miproyecto.TDSMaster.scproj fallado. Proyecto
Sitio Web\Miproyecto.sln error

La ayuda en la descripción del error no es un caso para mí.
No tengo VS 2012 en construir la máquina. Tengo instalado Microsoft Visual Studio 2012 Shell
para apoyar mi proyecto web.
Cómo resolverlo ?
Gracias.

5 Comentarios

  1. 21

    TransformXML viene como parte de la ASP.NET herramientas de Publicación Web. Como tal, que por lo general vienen con una instalación de Visual Studio en su servidor de generación y requieren algo más que la versión de Shell de Visual Studio. Instalación de Visual Studio Express Web Edition también puede hacer el truco.

    Podrías probar instalando el Web-Implementar paquete para ver si es suficiente, pero por lo general me acabo de instalar la versión completa de Visual Studio en un agente de compilación. Esto es legal bajo licencias de Suscripción a MSDN.

    Después de algunos experimentos puedo decirle que usted necesita para instalar, al menos, el Visual Studio Herramientas para Desarrolladores Web en el servidor de generación de estas tareas para conseguir instalado el camino oficial. Tengo la sospecha de que la instalación del Visual Studio Express Web Edition sería suficiente.

    El

    • He instalado este y un montón de otras herramientas de Web Platform Installer 4.5, pero dos no funciona.
    • Por defecto, el TransformXML tarea se añade aquí: C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v{VisualStudioVersion}\Web\Microsoft.Web.Publishing.targets. La instalación de Visual Studio correctamente (es decir, Visual Studio Pro o mejor) debería solucionar el problema. O usted puede tratar de copiar/pegar el msbuild carpeta de un equipo que tiene instalado Visual Studio que puede funcionar si las tareas no tienen una dependencia en cualquier otra biblioteca que se incluye con Visual Studio.
    • Sí que se parece buena solución. Gracias.
    • Confirmó que copiar toda la C:\Program Files (x86)\MSBuild a la carpeta de TeamCity servidor de generación permitirá ejecutar el TransformXML tarea. Traté de copiar sólo los archivos que parecían relevantes para la TransformXML tarea, pero todavía tengo el error (hasta he copiado todo el MSBuild carpeta)
    • Confirmó que la instalación de VS2013 no se soluciona el problema.
    • Confirmó que copiar toda la C:\Program Files (x86)\MSBuild carpeta en el servidor de generación permitirá ejecutar el TransformXML tarea. Mi dev máquina de Visual Studio 2013 Update 2 con Update 4 parcheado en y MS Web Developer Tools instalado. Considerando, que mi equipo de generación había VS 2013 Update3 con Update 4 parcheado en sin MS Web Developer Tools instalado. Así, la copia de la MSBuild carpeta de mi máquina de desarrollo para la construcción de la máquina trabajadas y pueden haber copiado los archivos adicionales que se presente porque en mi máquina de desarrollo a causa de la MS en la Web del Desarrollador de Herramientas de instalación.

  2. 18

    Intente esto:

    <UsingTask TaskName="TransformXml" AssemblyFile="$(MSBuildExtensionsPath)\Microsoft\VisualStudio\v10.0\Web\Microsoft.Web.Publishing.Tasks.dll" />
  3. 13

    Respuesta Corta – Importar Explícitamente

    Lo que tenía que hacer:

    <Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v12.0\Web\Microsoft.Web.Publishing.targets" Condition="!Exists('$(VSToolsPath)\Web\Microsoft.Web.Publishing.targets')" />

    Respuesta Larga

    Cuando usted hace de Archivo -> Nuevo Proyecto Web en VS2013 obtener la siguiente dentro de la *.csproj de archivo:

    <PropertyGroup>
      <VisualStudioVersion Condition="'$(VisualStudioVersion)' == ''">10.0</VisualStudioVersion>
      <VSToolsPath Condition="'$(VSToolsPath)' == ''">$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)</VSToolsPath>
    </PropertyGroup>
    <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
    <Import Project="$(VSToolsPath)\WebApplications\Microsoft.WebApplication.targets" Condition="'$(VSToolsPath)' != ''" />

    La $(VisualStudioVersion) siempre se evalúa 11.0 para mí en construir máquinas y en múltiples máquinas de desarrollo. Incluso en máquinas con VS2013, que es 12.0.

    De buceo en que me encontré con que en el Microsoft.WebApplication.targets desde arriba, tiene una línea para importar el archivo realmente queremos Microsoft.Web.Publishing.targets sólo si existe como tal en la línea de 377:

    <!--Import publishing target-->
    <Import Project="..\Web\Microsoft.Web.Publishing.targets" Condition="Exists('..\Web\Microsoft.Web.Publishing.targets')" />

    Así que para mí este es un implícito importación de Microsoft.Web.Publishing.targets.

    El problema es que si este archivo no existe, no hace nada y usted no sabe sobre él hasta que sale el error cuando intenta utilizar el TransformXml tarea.

    La instalación de VS2013 no instalar Microsoft.Web.Publishing.targets en el 11.0 directorio. Se hizo instalar en el 12.0 directorio. Supongo que si he instalado VS2012, se sería hacerlo.

    En cualquier caso, yo era capaz de resolverlo por explícitamente la importación de Microsoft.Web.Publishing.targets de la 12.0 directorio si no existe y no implícitamente importados por Microsoft.WebApplication.targets así:

    <Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v12.0\Web\Microsoft.Web.Publishing.targets" Condition="!Exists('$(VSToolsPath)\Web\Microsoft.Web.Publishing.targets')" />
    • Lo interesante es que se utiliza para no tener que utilizar el XMLTransform tarea, automáticamente se hizo. Y entonces un día se detuvo. Alguna idea de por qué?
  4. 1

    En Visual Studio de 2017 por defecto la mayoría(o todos?) no están instalados los componentes, pero usted puede añadir lo que se requiere (es decir, Asp.Net y desarrollo web), como se describe en https://docs.microsoft.com/en-us/visualstudio/install/modify-visual-studio.

    En mi máquina el instalador que se encuentra en «C:\Program Files (x86)\Microsoft Visual Studio\Installer\vs_installer.exe»

    • Tengo «ASP.NET y desarrollo web» seleccionado, pero no tengo el «C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v14.0\Web» de la carpeta. Lo que me estoy perdiendo?
    • He encontrado el siguiente NuGet que hace el trabajo: github.com/pdonald/nuget-webtargets
    • v14.0 es para Visual Studio 2015, 2017 componentes están ubicados en otro lugar ( probablemente en la v15.0 carpeta)
    • Ellos no están en la v15.0 carpeta. Parece que otros componentes de «ASP.NET y desarrollo web» debe estar instalado. extrañamente, de acuerdo con Visual Studio, están relacionadas con el desarrollo de Windows.
    • Sólo he conseguido solucionar este problema después de instalar lo sentí como todo. La solución fue la siguiente manera 1. Instalar VS 2017 comunidad (para mí) en el servidor de generación 2. Instalar el VS de las herramientas de generación de 2017 3. Modificar construir herramientas y seleccione Web de desarrollo de herramientas de construcción.
  5. 0

    Tuve el mismo problema después de la descalificación de Transcripción de las herramientas de 2.4.10 a 2.3.3 en VS2015.

    Solución:

    Puedo quitar esto de Microsoft.El manuscrito.objetivos archivo

        <FormatLocalizedString Condition="'$(TypeScriptVersionCheckResult)' == 'NoneSpecified'"
      Culture="$(PreferredUILang)" 
      Name="TypeScriptNoVersionWarning" 
      Arguments="$(LastKnownTypeScriptVersion)">
      <Output TaskParameter="String" PropertyName="TypeScriptNoVersionWarning" />
    </FormatLocalizedString>
    
    <FormatLocalizedString Condition="'$(TypeScriptVersionCheckResult)' == 'Downgrade' OR '$(TypeScriptVersionCheckResult)' == 'Upgrade'"
      Culture="$(PreferredUILang)" 
      Name="TypeScriptVersionMismatchWarning" 
      Arguments="$(TypeScriptToolsVersion);$(LastKnownTypeScriptVersion)">
      <Output TaskParameter="String" PropertyName="TypeScriptVersionMismatchWarning" />
    </FormatLocalizedString>

Dejar respuesta

Please enter your comment!
Please enter your name here