wake-up-neo.net

Bei der Installation von Laravel erhielt ich eine Fehlermeldung: "./composer.json ist nicht beschreibbar."

dies ist der Befehl, den ich ausführen

composer global require "laravel/installer"

und das ist der Text und der Fehler, den ich danach bekam:

Changed current directory to /home/dimitar/.composer
./composer.json is not writable.

Ich verwende Ubuntu 16.04 LTS und PHP 7 und Composer Version 1.3.0 und führe diesen Befehl von meinem Home-Ordner aus.

18
Dimitar

Überprüfen Sie den Besitzer von composer.json. 

ls -lh composer.json

Wenn es "root" ist, führe Folgendes aus:

Sudo chown -R yourusername:yourusername .composer/composer.json

Wenn Sie sich im .composer-Ordner befinden, überprüfen Sie den Besitzer des Cache-Ordners . Wenn es sich um "root" handelt, führen Sie den obigen Befehl erneut aus. Wechseln Sie jedoch in der Zeile composer.json zu cache ..__ Warnung des Cache-Verzeichnisses.

28
PelleLV

Der Fehler sagt alles, es gibt ein Problem mit Berechtigungen. Ich denke, der einfachste Weg, dies zu beheben, ist der folgende Befehl:

Sudo chmod -R 775 /home/dimitar
3
Alexey Mezenin

Ich denke, dass dieser Code in Ihrer Composer-Datei fehlt, wodurch Packagist das Paket von Laravel nicht finden kann.

Fügen Sie dies in Ihre composer.json-Datei ein und versuchen Sie es erneut:

"repositories": {
    "packagist": { "url": "https://packagist.org", "type": "composer" }
 }
2
Divyesh pal

Überprüfen Sie den Besitzer von composer.json.

ls -lh /home/<yourusername>/composer.json

Wenn es "root" ist, führe Folgendes aus:

Sudo chown -R yourusername:yourusername /home/<yourusername>/.composer/composer.json

Überprüfen Sie im .composer-Ordner den Besitzer des Cache-Ordners. Wenn es sich um 'root' handelt, führen Sie den obigen Befehl erneut aus, wechseln jedoch die Datei "composer.json" in "Cache". Andernfalls erhalten Sie möglicherweise die Warnung "Cache-Verzeichnis kann nicht erstellt werden".

0
mohamed anwer