Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Note
dotnetup está en versión preliminar pública. Sus características y comportamiento pueden cambiar antes de la disponibilidad general.
En este artículo se describen los problemas comunes dotnetup y cómo corregirlos.
Recopilación de información de diagnóstico
Antes de solucionar un problema, recopile esta información:
Muestre la
dotnetupversión, la arquitectura, el identificador en tiempo de ejecución y las instalaciones verificadas:dotnetup --infoMuestre las especificaciones de instalación rastreadas y las instalaciones, y compruebe los archivos en el disco:
dotnetup listCompare la configuración del entorno almacenado con el entorno actual:
dotnetup env showVuelva a ejecutar el comando que falló con la salida detallada. Por ejemplo:
dotnetup sdk install 10.0 --verbosity detailed
Los proyectos no compilan ni las aplicaciones no se inician después de la instalación
Síntoma: Después de configurar dotnetup en modo everywhere en Windows, los proyectos que antes se compilaban ahora no se pueden compilar. O bien, las aplicaciones dependientes del marco muestran este error:
You must install or update .NET to run this application.
Causa: En el modo everywhere, la instalación administrada por dotnetup tiene prioridad sobre la instalación para todo el equipo en Program Files. Los SDK y los entornos de ejecución que solo existen en la instalación de toda la máquina no están disponibles.
Solución: Migre los SDK y los entornos de ejecución a nivel de todo el sistema a la instalación administrada por dotnetup:
dotnetup sdk install --migrate-from-system
dotnetup runtime install --migrate-from-system
O bien, cambie al modo de acceso shell o none. Para obtener más información, consulte Consideraciones del modo global.
dotnet no usa la instalación administrada por dotnetup
Síntoma: El comando dotnet en el terminal no usa los SDK que dotnetup instaló.
Causa: El terminal se abrió antes de que dotnetup cambiara el entorno o la configuración del entorno no coincide con la configuración almacenada.
Solution:
Abrir un nuevo terminal. Los cambios en el perfil de shell o en Windows variables de entorno no afectan a los terminales que ya están abiertos.
Ejecute
dotnetup env show. Si notifica el desfase, vuelva a ejecutardotnetup env setpara aplicar la configuración almacenada.Para configurar solo el terminal actual, ejecute en el shell la salida de
dotnetup env script. Por ejemplo, en Bash o zsh:eval "$(dotnetup env script)"En PowerShell:
dotnetup env script --shell pwsh | Invoke-Expression
Para obtener más información, consulte Administración del entorno dotnetup.
La ruta de instalación ya contiene una instalación no registrada
Síntoma: Un comando de instalación falla con este error:
The install path '<path>' already contains a .NET installation that is not tracked by dotnetup. To avoid conflicts, use a different install path, remove the existing installation first, or use the --untracked option to install without tracking.
Causa:dotnetup no instala archivos rastreados en una carpeta que contiene una instalación de .NET que no rastrea. Esta comprobación impide dotnetup mezclar sus archivos con archivos que posee otra herramienta.
Solución: Realice una de las acciones siguientes:
- Seleccione otra carpeta con la
--install-pathopción . - Quite la instalación existente de la carpeta.
- Si otra herramienta posee la carpeta, use la
--untrackedopción .dotnetupno enumera, actualiza ni quita archivos sin seguimiento.
Para obtener más información, consulte Gestionar raíces de instalación personalizadas.
El ejecutable dotnet está en uso
Síntoma: En Windows, un comando de instalación muestra una advertencia similar a este mensaje:
Warning: Could not update dotnet executable at '<path>' - it is currently in use by another process. Close all running .NET applications and try again. The existing muxer will be retained. ...
Causa: Un proceso en ejecución usa el dotnet ejecutable, por lo que dotnetup no puede reemplazarlo. La instalación continúa con el ejecutable existente dotnet .
Un nuevo runtime podría requerir un dotnet ejecutable más reciente.
Solución: Cierre todas las aplicaciones .NET, IDE y servidores de compilación en ejecución. A continuación, vuelva a ejecutar el comando install de nuevo. Para que el comando produzca un error en lugar de continuar con una advertencia, use la --require-muxer-update opción .
Otro proceso de dotnetup se está ejecutando
Síntoma: Un comando muestra este mensaje y espera:
Another dotnetup process is running. Waiting for it to finish...
Causa:dotnetup se serializan los cambios en el estado de instalación compartido. Otro dotnetup comando está cambiando el mismo estado.
Solución: Espere a que finalice el otro comando. Si no se ejecuta ningún otro proceso dotnetup, busque los procesos dotnetup que dejaron de responder y finalícelos.
El manifiesto está corrupto
Síntoma: Un comando falla con este error:
The dotnetup manifest at <path> is corrupt. Consider deleting it and re-running the install.
El mensaje también puede decir que el archivo se modificó fuera de dotnetup.
Causa: El dotnetup_manifest.json archivo no es válido. Es posible que otro proceso o una edición manual haya cambiado el archivo.
Solución: Elimine el archivo de manifiesto y su .sha256 archivo del directorio de datos dotnetup. A continuación, vuelva a instalar los SDK y los entornos de ejecución que necesita. Dado que el manifiesto ya no realiza un seguimiento de la raíz de instalación existente, es posible que también tenga que eliminar esa carpeta primero. Para obtener la ubicación del directorio de datos, consulte Update or remove dotnetup.
Note
No edite el archivo de manifiesto. Usa dotnetup comandos para cambiar el estado de seguimiento.
El archivo de configuración está dañado
Síntoma: Un comando muestra esta advertencia:
Warning: The dotnetup config file at <path> appears to be corrupted and could not be read: ...
Causa: El dotnetup.config.json archivo no es válido.
dotnetup ignora el archivo.
Solución: Ejecute dotnetup env set con el modo de acceso que desee o vuelva a ejecutar dotnetup init. Estos comandos escriben una nueva configuración.
Un perfil de shell contiene un bloque dotnetup con formato incorrecto.
Síntoma: Un comando env falla con un error similar a este mensaje:
The shell profile '<path>' contains a malformed dotnetup block: '<begin marker>' does not have a matching '<end marker>'. Remove or repair the block manually and try again.
Causa:dotnetup marca la línea que agrega a un perfil de shell con comentarios iniciales y finales. Falta uno de estos comentarios.
Solución: Abra el perfil de shell en un editor de texto. Quite el bloque dotnetup incompleto o agregue el marcador que falta. A continuación, vuelva a ejecutar el comando.
Se canceló Elevation
Síntoma: En Windows, un comando que activa o desactiva el modo everywhere muestra este mensaje:
Elevation was cancelled. The system PATH was not modified.
Causa: Los cambios en el sistema PATH requieren elevación de privilegios. Se canceló el mensaje de Control de cuentas de usuario (UAC).
Solución: Vuelva a ejecutar el comando y apruebe el aviso de UAC. O bien, seleccione el modo de acceso shell o none, que no requiere elevación.
Un manifiesto de lanzamiento ha expirado
Síntoma: Se produce un error de instalación o actualización durante la comprobación del manifiesto de versión con el código de ExpiredNow error.
Causa: La hora actual del sistema es igual o posterior a la hora de expiración del manifiesto. Es posible que el manifiesto haya expirado o que el reloj del sistema sea incorrecto. Una firma válida no hace que un manifiesto expirado sea aceptable.
Solution:
- Compruebe la fecha y hora del sistema. Corrija el reloj si es necesario.
- Vuelva a intentar ejecutar el comando. Si un proxy sirve metadatos de versión almacenados en caché, pida al administrador que compruebe si sirve un manifiesto expirado.
- Si el reloj es correcto y el error persiste, notifique el problema con la salida detallada del comando.
No edite el manifiesto ni cambie el reloj para omitir las comprobaciones de expiración. Para obtener más información, consulte Expiración del manifiesto.
Una instalación está bloqueada por una directiva de TI
Síntoma: Se produce un error en la instalación de una compilación diaria o de prelanzamiento con un mensaje que indica que una directiva de TI requiere descargas firmadas por código.
Causa: Un administrador bloqueó las descargas sin firmar en el equipo.
Solución: Instale una versión publicada o pida al administrador que borre la directiva. Para obtener más información, consulte Cómo dotnetup comprueba las descargas.
Informar sobre un problema
Si este artículo no resuelve el problema, busque los problemas de dotnetup existentes.
Si no encuentra ninguna coincidencia, abra un nuevo problema en el repositorio dotnet/sdk con la plantilla de problema dotnetup . Incluya la salida de dotnetup --info y la salida del comando con error con --verbosity detailed.
Para preguntas y sugerencias, use discusiones de dotnetup.