No se puede abrir el código de Visual Studio

10

He instalado VS Code en mi computadora portátil con Ubuntu 16.04 LTS. He probado varios métodos de instalación con resultados idénticos; más recientemente, seguí las "nuevas" instrucciones de Cactux aquí . He intentado abrir la aplicación de dos maneras sin ningún efecto.

  • Cuando abro el programa desde 'Aplicaciones', el icono se muestra en el iniciador durante aproximadamente 15 segundos y luego desaparece. No aparece ningún error.
  • Cuando abro una terminal y escribo code, el comando no hace nada y aparece un nuevo mensaje en menos de un segundo.

Estoy luchando con qué probar ya que soy relativamente nuevo en Linux. which coderendimientos /usr/bin/code, que es un script bash. Aquí es donde salgo de mi profundidad.

Contenido del guión

/usr/bin$ cat code
#!/usr/bin/env bash
#
# Copyright (c) Microsoft Corporation. All rights reserved.
# Licensed under the MIT License. See License.txt in the project root for license information.

# If root, ensure that --user-data-dir or --file-write is specified
if [ "$(id -u)" = "0" ]; then
    for i in $@
    do
        if [[ $i == --user-data-dir || $i == --user-data-dir=* || $i == --file-write ]]; then
            CAN_LAUNCH_AS_ROOT=1
        fi
    done
    if [ -z $CAN_LAUNCH_AS_ROOT ]; then
        echo "You are trying to start vscode as a super user which is not recommended. If you really want to, you must specify an alternate user data directory using the --user-data-dir argument." 1>&2
        exit 1
    fi
fi

if [ ! -L $0 ]; then
    # if path is not a symlink, find relatively
    VSCODE_PATH="$(dirname $0)/.."
else
    if which readlink >/dev/null; then
        # if readlink exists, follow the symlink and find relatively
        VSCODE_PATH="$(dirname $(readlink -f $0))/.."
    else
        # else use the standard install location
        VSCODE_PATH="/usr/share/code"
    fi
fi

ELECTRON="$VSCODE_PATH/code"
CLI="$VSCODE_PATH/resources/app/out/cli.js"
ELECTRON_RUN_AS_NODE=1 "$ELECTRON" "$CLI" "$@"
exit $?

Salida de depuración (de diferentes directorios)

~$ bash -x code
++ id -u
+ '[' 1000 = 0 ']'
+ '[' '!' -L code ']'
++ dirname code
+ VSCODE_PATH=./..
+ ELECTRON=./../code
+ CLI=./../resources/app/out/cli.js
+ ELECTRON_RUN_AS_NODE=1
+ ./../code ./../resources/app/out/cli.js
/usr/bin/code: line 35: ./../code: No such file or directory
+ exit 127

/usr/bin$ bash -x code
++ id -u
+ '[' 1000 = 0 ']'
+ '[' '!' -L code ']'
+ which readlink
+++ readlink -f code
++ dirname /usr/share/code/bin/code
+ VSCODE_PATH=/usr/share/code/bin/..
+ ELECTRON=/usr/share/code/bin/../code
+ CLI=/usr/share/code/bin/../resources/app/out/cli.js
+ ELECTRON_RUN_AS_NODE=1
+ /usr/share/code/bin/../code /usr/share/code/bin/../resources/app/out/cli.js
+ exit 0

Contenido de la RUTA

~$ $PATH
bash: /home/adam/anaconda3/bin:/home/adam/anaconda3/bin:/home/adam/bin:/home/adam/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin: No such file or directory

Cualquier ayuda o sugerencia son apreciadas.

Adán
fuente
1
Asegúrese de tener sus paquetes actualizados. Puede verificar esto con estos comandos: 1) sudo apt update 2) sudo apt upgrade . Si obtiene algún error, aborde los errores. Luego intente ejecutar el apt desde la terminal y verifique si hay errores.
LD James
Solo esto funcionó para mí `` código de ejecución rápida ''
Thomas G.

Respuestas:

14

Tuve el mismo problema descrito aquí, nueva instalación de Ubuntu 18.04 LTS. Instalé VS Code de conda.

Descubrió que si ejecuta lo siguiente

code --verbose

Te dirá lo que está sucediendo con Code. En mi caso

code --verbose
[main 20:19:26] Startup error: 
Error: EACCES: permission denied, mkdir '/home/<user>/.config/Code/CachedData'

Por supuesto, la carpeta ~ / .config / Code tenía permisos de acceso raíz por alguna razón. Eliminó la carpeta usando sudo.

rm -rf /home/<user>/.config/Code 

Intenté nuevamente ejecutar el código y funcionó bien.

Robin G
fuente
4

Yo tuve el mismo problema. Como Robin G y Nezir sugirieron, me di cuenta de que el propietario del directorio /home/user/.config/Code es la "raíz". Sin embargo, puede cambiar la propiedad de ese directorio en lugar de eliminarlo.

sudo chown -R user /home/user/.config/Code

La opción "-R" es necesaria para cambiar recursivamente la propiedad de todos los archivos y directorios en el directorio de destino.

Después de esto, Visual Studio Code v. 1.27 en ubuntu 18.04 funciona como se supone que debe hacerlo en mi máquina.

Cheveyotala
fuente
Al menos aprendí algo nuevo: chowncomando
Soma Mbadiwe
2

Depure el bash con el comando correcto

Para depurar debe usar el siguiente comando:

bash --debugger `which code`

Esto ejecutará la línea de script bash por línea. Para ir a la siguiente línea simplemente escriba n y volver . Publique la salida de lo que veremos más.

Instalación a través de snap (para versiones de Ubuntu> 18.04)

Por cierto, Ubuntu 18.04 LTS (versión a largo plazo) ahora admite código directamente y puede instalarlo a través del paquete snap:

Muestra la versión y la información del complemento compatible con ubuntu:

snap info code

e instalarlo

sudo snap install code 

Personalmente prefiero instalarlo a través de apt. Por lo tanto, siga estas instrucciones de microsoft:

Instalar VS Code

curl https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > microsoft.gpg
sudo mv microsoft.gpg /etc/apt/trusted.gpg.d/microsoft.gpg
sudo sh -c 'echo "deb [arch=amd64] https://packages.microsoft.com/repos/vscode stable main" > /etc/apt/sources.list.d/vscode.list'

Esto descargará la clave gpg y copiará y creará los archivos apt. Luego, simplemente puede actualizar e instalar el código vs :

sudo apt-get update
sudo apt-get install code
  • La ventaja de este método de instalación es que puede actualizar vscode simplemente usando el comando apt-get update . Funciona bien y uso el código vs con el complemento vim durante más de 2 años (c, c ++, python, md, latex, html, javascript ...).
abu_bua
fuente
No dados. Sin embargo, en este punto, en realidad solo puedo esperar a 18.04. Gracias por el consejo.
Adam
1

Probar en terminal

code --user-data-dir

Trabajó para mi.

sarawgeek
fuente
1

Abra su terminal y ejecute los siguientes comandos:

  1. sudo rm -rf /home/your_username/.config/Code

    (Reemplace your_usernamecon su nombre de usuario real).

    Luego proporcione su contraseña y presione Enter.

  2. code --verbose

Nkosinathi Sola
fuente
0

El código VS puede no abrirse silenciosamente si no tiene dependencias requeridas.

De esta página:

sudo apt-get install -f # Install dependencies
Andrey Kudriavtsev
fuente
Espero que una oración sea suficiente para explicar lo que significa 'instalar dependencias'
Andrey Kudriavtsev
0
code --verbose

solo hizo el truco para mí cuando Code no pudo iniciarse (se atascó) después del bloqueo del sistema X. Sin embargo, los archivos abiertos no fueron los más recientes, sino algunos antiguos.

Tero Lahtinen
fuente
0

En mi caso, cuando ejecuté code --verboseel error fue:

Error: ENOSPC: Límite del sistema para el número de observadores de archivos alcanzado, mire '/ snap / code'

Entonces aumenté el número de observadores de archivos a su máximo modificando /etc/sysctl.confy agregando esto al final del archivo:

fs.inotify.max_user_watches=524288

Luego tuve que ejecutar este comando para cargar el valor en el sistema:

sudo sysctl -p

Ahora puedo ejecutar VScode sin problemas

Alex Jolig
fuente