Tidak dapat membuka Kode Visual Studio

10

Saya telah menginstal VS Code di laptop saya dengan Ubuntu 16.04 LTS. Saya sudah mencoba beberapa metode instalasi dengan hasil yang identik; baru-baru ini, saya mengikuti instruksi "baru" dari Cactux di sini . Saya sudah mencoba membuka aplikasi dua cara tanpa efek.

  • Ketika saya membuka program dari 'Aplikasi', ikon muncul di peluncur selama sekitar 15 detik dan kemudian menghilang. Tidak ada kesalahan yang muncul.
  • Ketika saya membuka terminal dan mengetik code, perintah tidak melakukan apa-apa dan saya mendapatkan prompt baru dalam waktu kurang dari satu detik.

Saya berjuang dengan apa yang harus dicoba karena saya relatif baru di Linux. which codemenghasilkan /usr/bin/code, yang merupakan skrip bash. Di sinilah saya keluar dari kedalaman saya.

Isi skrip

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

Output debug (dari berbagai direktori)

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

Isi dari 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

Setiap bantuan atau saran sangat dihargai.

Adam
sumber
1
Pastikan paket Anda diperbarui. Anda dapat memverifikasi ini dengan perintah-perintah ini: 1) sudo apt update 2) sudo apt upgrade . Jika Anda mendapatkan kesalahan, atasi kesalahan tersebut. Kemudian coba jalankan apt dari terminal dan periksa kesalahannya.
LD James
Hanya ini yang bekerja untuk saya `` `snap run code` ``
Thomas G.

Jawaban:

14

Saya memiliki masalah yang sama dijelaskan di sini, instalasi baru Ubuntu 18,04 LTS. Saya menginstal VS Code dari conda.

Menemukan itu jika Anda menjalankan yang berikut

code --verbose

Ini akan memberi tahu Anda apa yang terjadi dengan Kode. Dalam hal ini

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

cukup yakin folder ~ / .config / Code memiliki izin akses root untuk beberapa alasan. Menghapus folder menggunakan sudo.

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

Mencoba lagi untuk menjalankan kode dan berfungsi dengan baik.

Robin G
sumber
4

Saya memiliki masalah yang sama. Seperti yang disarankan oleh Robin G dan Nezir, saya menyadari bahwa pemilik /home/user/.config/Code driectory adalah "root". Namun, Anda bisa mengubah kepemilikan direktori itu alih-alih menghapusnya.

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

Opsi "-R" diperlukan untuk mengubah kepemilikan semua file dan direktori secara rekursif di bawah direktori target secara rekursif.

Setelah ini, Visual Studio Code v. 1.27 di ubuntu 18.04 berfungsi sebagaimana mestinya di komputer saya.

Cheveyotala
sumber
Setidaknya saya belajar sesuatu yang baru: chowncommand
Soma Mbadiwe
2

Debug bash dengan perintah yang benar

Untuk debug Anda harus menggunakan perintah berikut:

bash --debugger `which code`

Ini akan menjalankan baris skrip bash per baris. Untuk pergi ke baris berikutnya cukup ketik n dan kembali . Poskan hasilnya daripada kita akan melihat lebih banyak.

Menginstal melalui snap (untuk versi Ubuntu> 18.04)

BTW Ubuntu 18.04 LTS (Rilis jangka panjang) sekarang mendukung kode secara langsung dan Anda dapat menginstalnya melalui paket snap:

Tampilkan versi dan info snap yang didukung ubuntu:

snap info code

dan untuk menginstalnya

sudo snap install code 

Saya pribadi lebih suka menginstalnya melalui apt. Oleh karena itu ikuti instruksi ini dari microsoft:

Menginstal Kode VS

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'

Ini akan mengunduh kunci gpg dan menyalin dan membuat file apt. Kemudian Anda cukup memperbarui dan menginstal kode vs :

sudo apt-get update
sudo apt-get install code
  • Keuntungan dari metode instalasi ini adalah Anda dapat dengan mudah memperbarui vscode menggunakan perintah apt-get update . Bekerja dengan baik dan saya menggunakan kode vs dengan plugin vim selama lebih dari 2 tahun (c, c ++, python, md, lateks, html, javascript ...).
abu_bua
sumber
Tidak ada dadu. Pada titik ini, saya sebenarnya hanya bisa menunggu 18,04. Terima kasih atas tipnya.
Adam
1

Coba di terminal

code --user-data-dir

Bekerja untukku.

sarawgeek
sumber
1

Buka terminal Anda dan jalankan perintah berikut:

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

    (Ganti your_usernamedengan nama pengguna Anda yang sebenarnya.)

    Kemudian berikan kata sandi Anda dan tekan Enter.

  2. code --verbose

Nkosinathi Sola
sumber
0

Kode VS diam-diam gagal dibuka jika Anda tidak memiliki dependensi yang disyaratkan.

Dari halaman ini :

sudo apt-get install -f # Install dependencies
Andrey Kudriavtsev
sumber
Saya harap satu kalimat sudah cukup untuk menjelaskan apa artinya `instal dependensi`
Andrey Kudriavtsev
0
code --verbose

sendiri melakukan trik untuk saya ketika Code gagal memulai (macet) setelah sistem X crash. Namun, file yang dibuka bukan yang terbaru, tetapi beberapa yang kuno.

Tero Lahtinen
sumber
0

Dalam kasus saya ketika saya menjalankan code --verbosekesalahan adalah:

Kesalahan: ENOSPC: Batas sistem untuk jumlah pengamat file yang tercapai, tonton '/ jepret / kode'

Jadi saya meningkatkan jumlah pengamat file secara maksimal dengan memodifikasi /etc/sysctl.confdan menambahkan ini di akhir file:

fs.inotify.max_user_watches=524288

Kemudian saya harus menjalankan perintah ini untuk memuat nilai dalam sistem:

sudo sysctl -p

Sekarang saya dapat menjalankan VScode tanpa masalah

Alex Jolig
sumber