tutorial - visual studio c# descargar




Error de compilación VS2013 externo "error MSB4019: no se encontró el proyecto importado<ruta>" (16)

Estoy creando un proyecto a través de la línea de comandos y no dentro de Visual Studio 2013. Nota, había actualizado mi proyecto de Visual Studio 2012 a 2013. El proyecto se desarrolla bien dentro del IDE. Además, desinstalé completamente VS2012 primero, reinicié e instalé VS2013. La única versión de Visual Studio que tengo es 2013 Ultimate.

ValidateProjects:
    39>path_to_project.csproj(245,3): error MSB4019: The imported project "C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v11.0\WebApplications\Microsoft.WebApplication.targets" was not found. Confirm that the path in the <Import> declaration is correct, and that the file exists on disk.
    39>Done Building Project "path_to_project.csproj" (Clean target(s)) -- FAILED.

Aquí están las dos líneas en cuestión:

<Import Project="$(VSToolsPath)\WebApplications\Microsoft.WebApplication.targets" Condition="'$(VSToolsPath)' != ''" />
<Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v12.0\WebApplications\Microsoft.WebApplication.targets" Condition="false" />

La segunda línea original era v10.0, pero la cambié manualmente a v12.0.

$ (VSToolsPath) se extiende desde lo que veo a la carpeta v11.0 (VS2012), que obviamente ya no está allí. El camino debería haber sido v12.0.

C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v12.0\WebApplications\

Intenté especificar VSToolsPath en mi tabla de variables de entorno del sistema, pero la utilidad de compilación externa todavía usa v11.0. Intenté buscar en el registro y no encontré nada.

Lamentablemente, no veo ninguna manera fácil de obtener la línea de comandos exacta utilizada. Yo uso una herramienta de construcción.

¿Pensamientos?


Acabo de recibir una respuesta de Kinook, quien me dio un link :

Básicamente, necesito llamar a lo siguiente antes de la construcción. Supongo que Visual Studio 2013 no registra automáticamente el entorno primero, pero 2012 lo hizo, o lo hice y lo olvidé.

call "C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\vcvarsall.bat" x86

Con suerte, este post ayuda a alguien más.


Debe copiar la aplicación Web de C: \ Archivos de programa (x86) \ MSBuild \ Microsoft \ VisualStudio \ v12.0 \ a C: \ Archivos de programa (x86) \ MSBuild \ Microsoft \ VisualStudio \ v11.0 \


Ejecutar esto en la línea de comandos también solucionará el problema. SETX VisualStudioVersion "12.0"


En mi caso, el entorno de desarrollo es VS2013 y estoy usando TFS 2010. La compilación fue dirigida a .NET 4.5.1. Estaba configurando la compilación automática para CI. Cada vez que intentaba las soluciones mencionadas anteriormente, como eliminar el grupo de propiedades por completo o reemplazar algunas líneas, etc. mi compilación solía suceder en TFS, pero mi publicación de Azure solía fallar con 'MSDeploy' o, a veces, algún error diferente. No pude lograr ambos a la vez.

Así que finalmente tuve que pasar el argumento de MSBuild para resolver el problema.

Ir a Editar definición de compilación> Proceso> 3. Avanzado> Argumentos de MSBuild (configurados en) /p:VisualStudioVersion=12.0

Funcionó para mí.


En mi caso, solo comento debajo de la línea abriendo el archivo .csproj e hice el truco

. <!-- <Import Project="..\PRPJECTNAME.targets" /> -->

Mi problema puede ser diferente pero estoy arrastrado aquí, pero esto puede ayudar a alguien.

Escogí un solo proyecto web de mi solución e intenté abrirlo como un proyecto independiente que estaba generando problemas, después de todo lo anterior, puedo resolverlo.


Estaba usando una utilidad de compilación externa. Piensa en algo como las hormigas, si entiendo el producto correctamente, solo una versión comercial. Tuve que contactar al fabricante para la respuesta.

Como resultado, hay una macro global en el proyecto, DEVSTUDIO_NET_DIR. Tuve que cambiar el camino a .Net allí. Enumeran varias versiones de estudio visual como "Acciones", que a través de mí, pero todos los caminos llevan a esa variable global detrás de las escenas. Enumeraría eso como un defecto contra el producto, si tuviera mi camino, a menos que me esté faltando algo en mi entendimiento. Corrigiendo el camino allí arreglamos el problema de compilación.


He intentado todas las soluciones anteriores y todavía no he tenido suerte. Había escuchado a gente instalar Visual Studio en sus servidores de compilación para solucionarlo, pero solo tenía 5 GB de espacios libres, así que simplemente copié C: \ Archivos de programa (x86) \ MSBuild \ Microsoft \ VisualStudio a mi servidor de compilación y lo llamé un día. . Comenzó a trabajar después de eso, utilizando Team City 9.xy Visual Studio 2013.


Recibí este error cuando instalo algunos componentes de VS. Desafortunadamente ninguna de estas respuestas no me ayudó. Uso TFS para el desarrollo de comandos y no tengo permisos para editar la definición de compilación. VS110COMNTOOLS este problema eliminando las variables de entorno que llamaban VS110COMNTOOLS y VS120COMNTOOLS . Creo que se instaló con mis componentes VS.


Solo se necesita hacer una cosa para resolver el problema: actualizar TeamCity a la versión 8.1.xo superior porque el soporte para Visual Studio 2012/2013 y MSBuild Tools 2013 solo se introdujo en TeamCity 8.1. Una vez que haya actualizado su TeamCity, modifique la configuración de la versión de MSBuild Tools en su paso de compilación y el problema desaparecerá. Para obtener más información, lea aquí: http://blog.turlov.com/2014/07/upgrade-teamcity-to-enable-support-for.html


También tuve el mismo error .. Hice esto para solucionarlo

<Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v11.0\WebApplications\Microsoft.WebApplication.targets" />

cambiar a

<Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v12.0\WebApplications\Microsoft.WebApplication.targets" Condition="false" />

y esta hecho


Tengo instalado Visual Studio 2013. Esto funcionó para mí:

<PropertyGroup>
    <VisualStudioVersion Condition="'$(VisualStudioVersion)' != ''">12.0</VisualStudioVersion>`
    <VSToolsPath Condition="'$(VSToolsPath)' == ''">$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)</VSToolsPath>
</PropertyGroup>

Así que he cambiado la condición de == a != Y el valor de 10.0 a 12.0 .


Tuve el mismo problema y encontré una solución más fácil.

Es debido a que Vs2012 agregue en el archivo csproj esta parte:

<PropertyGroup>
  <VisualStudioVersion Condition="'$(VisualStudioVersion)' == ''">10.0</VisualStudioVersion>
  <VSToolsPath Condition="'$(VSToolsPath)' == ''">$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)</VSToolsPath>
</PropertyGroup>

Puede eliminar esa parte de manera segura y su solución se construirá.

Como señaló Sielu, debe asegurarse de que el archivo .proj comience con <Project ToolsVersion="12" contrario, la próxima vez que abra el proyecto con Visual Studio 2010, volverá a agregar el nodo eliminado.

de lo contrario, si necesita usar webdeploy o si usa un servidor de compilación, la solución anterior no funcionará, pero puede especificar la propiedad VisualStudioVersion en su script de compilación:

msbuild myproject.csproj /p:VisualStudioVersion=12.0

o edita la definición de tu compilación:


Tuve un problema similar. Todas las soluciones propuestas son solo una solución para este problema, pero no están resolviendo la fuente de error. La solución @giammin no se debe aplicar si está utilizando el servidor de compilación tfs, ya que se acaba de bloquear la funcionalidad de publicación. Solución @ cat5dev: resuelve el problema pero no resuelve la fuente de la misma.

Estoy casi seguro de que está utilizando una plantilla de proceso de compilación para VS2012 como ReleaseDefaultTemplate.11.1.xaml or DefaultTemplate.11.1.xaml Estas plantillas de compilación se han creado para VS2012 y $ (VisualStudioVersion) configuradas en 11.0

Debe usar la plantilla de proceso de compilación para VS2013 ReleaseTfvcTemplate.12.xaml or TfvcTemplate.12.xaml que tiene $ (VisualStudioVersion) establecido en 12.0

Esto funciona sin ningún cambio en el archivo del proyecto.


Yo: nada ayudaba a cambiar el valor v11.0 de la variable VisualStudioVersion a v10.0. Cambiar la variable en el archivo .csproj no lo hizo. Ponerlo a través de comando no lo hizo. Etc ...

Terminé de copiar mi carpeta local de esa versión específica (v11.0) a mi servidor de compilación.


Basado en TFS 2015 Build Server

Si contrarresta este error ... Error MSB4019: The imported project "C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v14.0\WebApplications\Microsoft.WebApplication.targets" was not found. Confirm that the path in the <Import> declaration is correct, and that the file exists on disk. ... Error MSB4019: The imported project "C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v14.0\WebApplications\Microsoft.WebApplication.targets" was not found. Confirm that the path in the <Import> declaration is correct, and that the file exists on disk.

Abra el archivo .csproj del proyecto mencionado en el mensaje de error y comente la siguiente sección

<!-- <PropertyGroup> --> <!-- <VisualStudioVersion Condition="'$(VisualStudioVersion)' == ''">10.0</VisualStudioVersion> --> <!-- <VSToolsPath Condition="'$(VSToolsPath)' == ''">$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)</VSToolsPath> --> <!-- </PropertyGroup> -->


La solución de giammin es parcialmente incorrecta. NO DEBE eliminar todo el Grupo de propiedades de su solución. Si lo hace, la característica "DeployTarget = Package" de MSBuild dejará de funcionar. Esta característica se basa en la configuración de "VSToolsPath" .

<PropertyGroup>
  <!-- VisualStudioVersion is incompatible with later versions of Visual Studio.  Removing. -->
  <!-- <VisualStudioVersion Condition="'$(VisualStudioVersion)' == ''">10.0</VisualStudioVersion> -->
  <!-- VSToolsPath is required by MSBuild for features like "DeployTarget=Package" -->
  <VSToolsPath Condition="'$(VSToolsPath)' == ''">$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)</VSToolsPath>
</PropertyGroup>
...
<Import Project="$(VSToolsPath)\WebApplications\Microsoft.WebApplication.targets" Condition="'$(VSToolsPath)' != ''" />




visual-studio-2013