Impossible d'ouvrir Visual Studio Code

10

J'ai installé VS Code sur mon ordinateur portable avec Ubuntu 16.04 LTS. J'ai essayé plusieurs méthodes d'installation avec des résultats identiques; plus récemment, j'ai suivi les "nouvelles" instructions de Cactux ici . J'ai essayé d'ouvrir l'application de deux manières sans effet.

  • Lorsque j'ouvre le programme depuis 'Applications', l'icône s'affiche dans le lanceur pendant environ 15 secondes, puis disparaît. Aucune erreur n'apparaît.
  • Lorsque j'ouvre un terminal et que je tape code, la commande ne fait rien et j'obtiens une nouvelle invite en moins d'une seconde.

Je me bats avec quoi essayer car je suis relativement nouveau sur Linux. which codeyields /usr/bin/code, qui est un script bash. C'est là que je sors de ma profondeur.

Contenu du script

/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 $?

Sortie de débogage (à partir de différents répertoires)

~$ 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

Contenu de PATH

~$ $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

Toute aide ou suggestion est appréciée.

Adam
la source
1
Assurez-vous que vos packages sont mis à jour. Vous pouvez le vérifier avec ces commandes: 1) sudo apt update 2) sudo apt upgrade . Si vous obtenez des erreurs, corrigez-les. Ensuite, essayez d'exécuter l'apt à partir du terminal et vérifiez les erreurs.
LD James
Seul cela a fonctionné pour moi `` `` snap run code '' ''
Thomas

Réponses:

14

J'ai eu le même problème décrit ici, nouvelle installation d'Ubuntu 18.04 LTS. J'ai installé VS Code de conda.

J'ai découvert que si vous exécutez ce qui suit

code --verbose

Il vous dira ce qui se passe avec Code. Dans mon cas

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

bien sûr, le dossier ~ / .config / Code avait des autorisations d'accès root pour une raison quelconque. Supprimé le dossier à l'aide de sudo.

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

J'ai essayé à nouveau d'exécuter du code et cela fonctionnait bien.

Robin G
la source
4

J'ai eu le même problème. Comme Robin G et Nezir l'ont suggéré, j'ai réalisé que le propriétaire du répertoire /home/user/.config/Code est la "racine". Cependant, vous pouvez simplement modifier la propriété de ce répertoire au lieu de le supprimer.

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

L'option "-R" est nécessaire pour changer récursivement la propriété de tous les fichiers et répertoires du répertoire cible.

Après cela, le Visual Studio Code v. 1.27 sur Ubuntu 18.04 fonctionne comme il est censé le faire sur ma machine.

Cheveyotala
la source
Au moins, j'ai appris quelque chose de nouveau: la chowncommande
Soma Mbadiwe
2

Déboguez le bash avec la commande correcte

Pour déboguer, vous devez utiliser la commande suivante:

bash --debugger `which code`

Cela exécutera la ligne de script bash par ligne. Pour passer à la ligne suivante, tapez simplement n et retournez . Publiez la sortie que nous verrons plus.

Installation via snap (pour les versions Ubuntu> 18.04)

BTW Ubuntu 18.04 LTS (version à long terme) prend désormais en charge le code directement et vous pouvez l'installer via le package snap:

Afficher la version et les informations du snap pris en charge par ubuntu:

snap info code

et pour l'installer

sudo snap install code 

Je préfère personnellement l' installer via apt. Par conséquent, suivez ces instructions de Microsoft:

Installation de 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'

Cela va télécharger la clé gpg et copier et créer les fichiers apt. Ensuite, vous pouvez simplement mettre à jour et installer vs code :

sudo apt-get update
sudo apt-get install code
  • L'avantage de cette méthode d'installation est que vous pouvez simplement mettre à jour vscode à l'aide de la commande apt-get update . Fonctionne très bien et j'utilise vs code avec le plugin vim depuis plus de 2 ans (c, c ++, python, md, latex, html, javascript ...).
abu_bua
la source
Pas de dé. À ce stade, je peux en fait attendre le 18.04. Merci pour le conseil.
Adam
1

Essayez dans le terminal

code --user-data-dir

A travaillé pour moi.

sarawgeek
la source
1

Ouvrez votre terminal et exécutez les commandes suivantes:

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

    (Remplacez your_usernamepar votre nom d'utilisateur réel.)

    Saisissez ensuite votre mot de passe et appuyez sur Enter.

  2. code --verbose

Nkosinathi Sola
la source
0

Le code VS peut échouer en silence si vous n'avez pas les dépendances requises.

De cette page:

sudo apt-get install -f # Install dependencies
Andrey Kudriavtsev
la source
J'espère qu'une phrase suffit pour expliquer ce que cela signifie «installer les dépendances»
Andrey Kudriavtsev
0
code --verbose

seul a fait l'affaire pour moi lorsque Code n'a pas pu démarrer (s'est coincé) après le crash du système X. Cependant, les fichiers ouverts n'étaient pas les plus récents, mais certains plus anciens.

Tero Lahtinen
la source
0

Dans mon cas, lorsque j'ai exécuté code --verbosel'erreur, c'était:

Erreur: ENOSPC: limite système pour le nombre d'observateurs de fichiers atteinte, regardez '/ snap / code'

J'ai donc augmenté le nombre d'observateurs de fichiers à son maximum en modifiant /etc/sysctl.confet en ajoutant ceci à la fin du fichier:

fs.inotify.max_user_watches=524288

Ensuite, j'ai dû exécuter cette commande pour charger la valeur dans le système:

sudo sysctl -p

Maintenant, je peux exécuter VScode sans aucun problème

Alex Jolig
la source