Visual Studio 2019 vuelve a descargar las herramientas de la CLI de la función de Azure

13

Estoy tratando de escribir un par de funciones de Azure (versión 2) con Visual Studio 2019. La primera vez que intento ejecutarlas recibo el siguiente mensaje:

ingrese la descripción de la imagen aquí

Las funciones se ejecutan, pero si reinicio VS e intento ejecutar la función nuevamente, descarga las herramientas nuevamente, lo que demora una eternidad. Mientras vuelva a ejecutar la función dentro de la misma sesión VS, no volverá a realizar la descarga.

Verifiqué que tengo la carga de trabajo "Desarrollo de Azure" instalada en VS. También instalé las herramientas principales de Azure Functions con NPM como se describe aquí . Pero continúa volviéndose a descargar cada vez.

¿Cómo puedo evitar esto? Gracias.

Mark Waggoner
fuente
Tenía internet lento, y parece una descarga única. Pero debido a la lentitud de Internet, debe haber un tiempo de espera antes de descargarlo por completo. No estoy seguro si este es el caso para todos.
Kiran P.

Respuestas:

15

Un poco tarde para responder, pero recientemente me encontré con este problema y estaba ralentizando seriamente mi depuración. Intenté descargar las herramientas de Azure Functions Core a través de npm según lo recomendado por la página de Azure Functions GitHub, pero fue en vano.

Gracias a otra pregunta de desbordamiento de pila , fui a investigar dónde Visual Studio guarda las versiones instaladas localmente de las Herramientas de funciones de Azure:

C:\Users\[username]\AppData\Local\AzureFunctionsTools\Releases

La versión más reciente (para mí era 2.46.0), estaba vacía . Por capricho, copié el contenido de la versión anterior en la carpeta vacía y actualicé el manifest.json para apuntar a la nueva carpeta.

Actualicé las siguientes propiedades.

Actualicé las siguientes propiedades.

Esto solucionó el problema de inmediato para mí, pero todavía no sé por qué esta carpeta estaba vacía en primer lugar, o por qué dejar que Visual Studio descargue las herramientas no las persistió correctamente.

De cualquier manera, solo pensé en compartir en caso de que alguien más se encontrara con lo mismo.

necampanini
fuente
1
Gracias, me salvaste de perder horas. Es un error VS, simplemente no puede persistir los archivos correctamente. El equipo de VS recibió las quejas de los desarrolladores durante 1 año o más, luego aparentemente lo arreglaron en la v. 16.6.0 Preview 3.0 (aún no lo intenté). Vea más aquí: developercommunity.visualstudio.com/content/problem/612514/…
Anton M
1
Gracias, actualizar Visual Studio a 16.6.0 no parece resolver este problema, sin embargo, las instrucciones anteriores (+ comentarios de @heavenwing) lo resuelven.
user527614
@AntonM ~ El problema vinculado parece ser sobre un tema diferente. ¿Quizás ha publicado por error la URL incorrecta? En cualquier caso, ingresé un nuevo informe, que se encuentra aquí . Esta es ahora una referencia circular ;-)
InteXX
4

La respuesta de @necampanini es correcta.

Y proporcionaré más detalles de la siguiente manera:

Hay un archivo de fuente feed.json(o feed-v3.json) en %LocalAppData%\AzureFunctionsTools. Verifique la jerarquía de subcarpetas para la última versión de esta herramienta (por ejemplo, para mí es v3.4.1) y cree una subcarpeta correspondiente (por ejemplo %LocalAppData%\AzureFunctionsTools\Releases\3.4.1).

Obtenga la URL del archivo de fuente y descargue el archivo zip CLI Azure.Functions.Cli.min.win-<platform>.<version>.zip. Extraerlo en %LocalAppData%\AzureFunctionsTools\Releases\<version>\cli.

Obtenga las URL de estos dos paquetes NuGet del archivo de fuente:

  1. itemTemplates
  2. projectTemplates

Descargue los paquetes y guárdelos %LocalAppData%\AzureFunctionsTools\Releases\<version>\templates. Cambiar el nombre de los archivos:

  1. microsoft.azure.webjobs.itemtemplates.<version>.nupkg se convierte Azure.Functions.Templates.1.0.0.nupkg
  2. microsoft.azure.webjobs.projecttemplates.<version>.nupkg se convierte Microsoft.AzureFunctions.ProjectTemplates.1.0.0.nupkg

Por último, copie manifest.jsondesde la carpeta de la versión anterior %LocalAppData%\AzureFunctionsTools\Releases\<version>y luego edite este archivo para hacer referencia a la nueva versión.

Aquí hay una captura de pantalla:

ingrese la descripción de la imagen aquí

cielo
fuente
0

Intente actualizar Visual Studio a la última actualización y desaparecerá. si eso no funciona, intente limpiar el caché local de VS, entonces VS comenzará como el primer inicio después de la instalación de VS

Sajeetharan
fuente
Ya estoy en la última versión (o al menos dice que está actualizada, la versión 16.3.7). ¿Dónde se encuentra el caché?
Mark Waggoner el
C: \ Users \ xxx \ AppData \ Local \ Microsoft \ VisualStudio \ ................................... ........
Sajeetharan el
Gracias pero eso no ayudó. Eliminé todo en el directorio de VisualStudio y comencé VS. Recibí el mensaje "preparación para el primer uso". Luego abrí el proyecto, lo ejecuté y descargué las herramientas de CLI. Luego cerré y volví a abrir VS, lancé el proyecto y descargué las herramientas CLI (nuevamente).
Mark Waggoner el
0

Intente ejecutar Visual Studio como administrador y emita esto desde la consola:

npm i -g azure-functions-core-tools --unsafe-perm true

Luego intente reproducir el problema.

Arquitecto Jamie
fuente
Gracias pero no hay diferencia. Después de ejecutar NPM, recibí el mensaje "1 paquete actualizado". Pero relancé VS como administrador y yo mismo, y en ambos casos vuelve a descargar las herramientas de CLI.
Mark Waggoner el
@MarkWagoner ~ FYI, se ha publicado una solución para esto, en caso de que no lo haya visto.
InteXX