Nota
L'accés a aquesta pàgina requereix autorització. Podeu provar d'iniciar la sessió o de canviar els directoris.
L'accés a aquesta pàgina requereix autorització. Podeu provar de canviar els directoris.
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 se compilaban anteriormente ahora no se compilan. 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 sobre el modo everywhere.
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, evalúe 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 rastreada
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 dotnetup no instala archivos rastreados en una carpeta que contiene una instalación de .NET que no rastrea. Esta comprobación evita que dotnetup mezcle sus archivos con los archivos que otra herramienta posee.
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. 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 dotnetup serializa 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.
La actualización automática no reemplaza el archivo ejecutable
Síntoma:dotnetup self update informa de que no se ha aplicado ninguna actualización.
Causa: El canal seleccionado contiene la misma versión o una versión anterior.
Las compilaciones diarias oficiales también llevan una etiqueta preview y se asignan por defecto al canal de versión preliminar.
Solución: Para mantenerse en compilaciones diarias, ejecute dotnetup self update --channel daily.
Para volver a instalar o degradar deliberadamente a la versión preliminar más reciente, ejecute dotnetup self update --channel preview --force.
La actualización automática falla
Síntoma:dotnetup self update falla debido a su ubicación ejecutable, permisos, comprobación u otro comando activo.
Solution:
- Ejecute el archivo ejecutable independiente desde su directorio de instalación real, no a través del host
dotnetni de un vínculo simbólico ejecutable. - Compruebe que tiene acceso de escritura al directorio de instalación.
- Si otro comando mantiene un bloqueo, deje que finalice y vuelva a intentarlo.
- Si falla la verificación, no se salte la suma de comprobación ni la comprobación de firma. Informar del fallo.
- Si el archivo ejecutable ya no se inicia, vuelva a instalarlo con los scripts de descarga.
Para compilaciones anteriores que no reconocen el comando, use los scripts de descarga para instalar la versión preliminar actual. Para ver los detalles de la directiva de verificación y de descarga sin firmar, consulte el ejecutable dotnetup.
El manifiesto está dañado
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 la ubicación del directorio de datos, consulte Actualizar o eliminar dotnetup.
Note
No edite el archivo de manifiesto. Utilice los comandos dotnetup para cambiar el estado rastreado.
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 dotnetup marca las líneas que agrega a un perfil de shell con comentarios de inicio y fin. 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.
Elevación cancelada
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: la instalación de una compilación diaria o preliminar falla con un mensaje que indica que una directiva de TI requiere descargas firmadas con 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.