Composer wird aus dem Cache geladen

Lesezeit: 5 Minuten

Benutzer-Avatar
Tarik

Ich hatte ein Problem mit der Verwendung von Composer zum Installieren/Deinstallieren einiger Abhängigkeiten in Laravel, die nach dem Löschen aus zurückkamen composer.json und ihren Vendor-Ordner zu löschen, habe ich anfangs das Markdown-Paket von dflydev verwendet, aber jetzt wollte ich es in michelfs PHP-Markdown ändern, aber ich kann das alte nicht deinstallieren, da es aus dem Cache zurückgeladen wird, was ich überprüft habe AppData\Roaming\Composer und ist leer, irgendein Hinweis darauf, warum dies geschieht?

  - Installing dflydev/markdown (dev-master dee1f7a)
    Loading from cache

  • Haben Sie irgendetwas versucht, um dieses Problem zu lösen? Wenn ja, teilen Sie bitte Ihre Versuche mit

    – Nico Haase

    24. April 2020 um 8:58 Uhr

  • Ich habe versucht, meinem Composer-Befehl die Option –no-cache hinzuzufügen, und es hat die Abhängigkeiten heruntergeladen, ohne sie aus dem Cache zu laden ….

    – T.melz

    29. Oktober 2020 um 19:56 Uhr

Benutzer-Avatar
Atish Goswami

Sie können den folgenden Befehl verwenden, um den Cache unabhängig vom Betriebssystem zu löschen, auf dem Sie sich befinden:

php composer.phar clear-cache

oder wenn Composer global installiert ist

composer clear-cache

  • Außer ich habe meine gelöscht composer.lock Datei, die clear-cache Befehle hatten keine Wirkung.

    – Daniel W.

    25. April 2019 um 16:04 Uhr

  • Denken Sie daran, dass es mit root (Superuser) ausgeführt werden muss.

    – Amirhf

    26. März 2020 um 18:56 Uhr

  • Bitte fügen Sie Ihrer Antwort eine weitere Erklärung hinzu. Wie hilft das Leeren des Caches von heruntergeladenen Dateien dabei, Pakete zu installieren oder nicht zu installieren?

    – Nico Haase

    24. April 2020 um 8:59 Uhr

Ich denke, du kannst deine laufen lassen composer Befehle mit --no-cache Optionsflag wie

composer install --no-cache

Oder

composer require <package-name> --no-cache

Oder

composer update [<package-name>] --no-cache

Benutzer-Avatar
monsur.hoq

Wenn Sie den Cache aller Pakete löschen möchten, versuchen Sie bitte Folgendes:

$ composer clearcache

Oder um nur ein oder ein paar Pakete zu löschen:

$ composer clearcache packagename1 packagename2 ...

Sie können auch verwenden clear-cache was ein Alias ​​für ist clearcache.

Quelle : https://blog.liplex.de/clear-composer-cache/

  • Es ist nicht mehr möglich, den Cache für bestimmte Pakete zu leeren. Der Beitrag, auf den Sie verwiesen haben, enthält einen Kommentar, und der Beitrag selbst wurde aktualisiert.

    – Geige

    13. Juli 2018 um 19:44 Uhr

  • Bitte fügen Sie Ihrer Antwort eine weitere Erklärung hinzu. Wie hilft das Leeren des Caches von heruntergeladenen Dateien dabei, Pakete zu installieren oder nicht zu installieren?

    – Nico Haase

    24. April 2020 um 8:58 Uhr

Benutzer-Avatar
Simon Wickie

Composer speichert Pakete gemäß der Hersteller-/Paketnamen-Konvention. Sie sollten also auf kein Problem stoßen, nur weil der Paketname in einem Paket eines anderen Anbieters verwendet wird.

Die Cache-Standorte sind:

  • Windows: %LOCALAPPDATA%\Composer\files\vendor\packagename
  • Linux: ~/.composer/cache/files/vendor/packagename
  • Mac OS: ~/.composer/cache/files/packagename

Bearbeiten Sie nicht Ihre composer.json Datei manuell, um ein Paket zu entfernen – es bleibt in composer.lock.

Verwenden composer remove um das alte Paket dann zu löschen composer require den Ersatz zu installieren.

  • Das sieht nach dem ersten Versuch aus, das Problem wirklich zu lösen – danke für deine Antwort!

    – Nico Haase

    24. April 2020 um 9:00 Uhr

  • Ja … Wir sollten wahrscheinlich den Titel der Frage ändern, er ist ein bisschen irreführend

    – Darvanen

    25. April 2020 um 10:23 Uhr

  • Dies funktioniert nicht, wenn das Paket über Abhängigkeit installiert wurde. Es gibt Gründe, warum Sie composer.json möglicherweise manuell bearbeiten müssen, z. B. wenn Sie eine Referenz aktualisieren möchten, um einen lokalen Pfad für ein Paket zu verwenden.

    – Matt Clegg

    1. Mai 2020 um 8:17 Uhr

  • > Dies funktioniert nicht, wenn das Paket über Abhängigkeiten installiert wurde. Richtig. Aber das OP gibt direkt an, dass sie die Elemente löschen composer.json und sie kehren auf magische Weise zurück > Es gibt Gründe, warum Sie composer.json auf jeden Fall manuell bearbeiten müssen. Auch hier nicht anwendbar, wenn das OP versucht, ein ganzes Paket zu entfernen. ich könnte gesagt haben “lauf composer update nach dem Löschen des Wertes” aber das kommt mit Also viel mehr benötigtes Wissen.

    – Darvanen

    5. Mai 2020 um 1:24 Uhr


In einigen Fällen (z. B. OpenSuse 42.1) wird der gesamte Benutzercache abgelegt:

~/.cache/

Für den Composer lautet der Cache-Pfad wie für andere Anwendungen:

~/.cache/composer/

Entfernen Sie diesen Ordner einfach wie folgt:

rm -fR ~/.cache/composer

  • Das sieht nach dem ersten Versuch aus, das Problem wirklich zu lösen – danke für deine Antwort!

    – Nico Haase

    24. April 2020 um 9:00 Uhr

  • Ja … Wir sollten wahrscheinlich den Titel der Frage ändern, er ist ein bisschen irreführend

    – Darvanen

    25. April 2020 um 10:23 Uhr

  • Dies funktioniert nicht, wenn das Paket über Abhängigkeit installiert wurde. Es gibt Gründe, warum Sie composer.json möglicherweise manuell bearbeiten müssen, z. B. wenn Sie eine Referenz aktualisieren möchten, um einen lokalen Pfad für ein Paket zu verwenden.

    – Matt Clegg

    1. Mai 2020 um 8:17 Uhr

  • > Dies funktioniert nicht, wenn das Paket über Abhängigkeiten installiert wurde. Richtig. Aber das OP gibt direkt an, dass sie die Elemente löschen composer.json und sie kehren auf magische Weise zurück > Es gibt Gründe, warum Sie composer.json auf jeden Fall manuell bearbeiten müssen. Auch hier nicht anwendbar, wenn das OP versucht, ein ganzes Paket zu entfernen. ich könnte gesagt haben “lauf composer update nach dem Löschen des Wertes” aber das kommt mit Also viel mehr benötigtes Wissen.

    – Darvanen

    5. Mai 2020 um 1:24 Uhr


Benutzer-Avatar
Herr Mbuki

Führen Sie den folgenden Befehl aus

rm -rf ~/.composer/cache*

wenn die Berechtigung verweigert wird, fügen Sie sudo hinzu

  • Wenn jemand Berechtigungsprobleme in seinem eigenen Home-Verzeichnis hat, “fügen Sie sudo” zu a rm -rf Befehl, der einen Platzhalter enthält, ist keine gute Idee.

    – Nachdenklicher Drache

    22. April 2020 um 16:07 Uhr

  • Bitte fügen Sie Ihrer Antwort eine weitere Erklärung hinzu. Wie hilft das Leeren des Caches von heruntergeladenen Dateien dabei, Pakete zu installieren oder nicht zu installieren?

    – Nico Haase

    24. April 2020 um 8:59 Uhr

1354350cookie-checkComposer wird aus dem Cache geladen

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy