Klasse ‘League\Flysystem\AwsS3v3\AwsS3Adapter’ nicht gefunden (Laravel + Heroku)

Lesezeit: 3 Minuten

meine Laravel 5.4-Anwendung in heroku mit aws s3 verbinden, um Bilder zu speichern und anzuzeigen, die ich mit einem Dashboard hochlade.

In Local habe ich kein Problem damit, die Bilder hochzuladen und anzuzeigen, selbst diese werden in dem von mir erstellten Bucket gespeichert. Aber wenn ich aws in Heroku einrichte, um dort Tests durchzuführen, erhalte ich den Fehler: Klasse ‘Liga\Flysystem\AwsS3v3\AwsS3Adapter’

Ich habe das Paket bereits von Composer entfernt und neu installiert, ich weiß nicht, warum der Fehler nicht in meiner lokalen Umgebung auftritt.

vielen Dank.

  • Wie stellen Sie Ihre App in Heroku bereit? Sind Abhängigkeiten sogar mit installiert composer install während der Bereitstellung oder ist der Inhalt der vendor Verzeichnis sonst mit Produktion synchronisiert?

    – lokalheinz

    10. August 2017 um 20:50 Uhr

  • Können Sie den Inhalt Ihrer teilen composer.json?

    – lokalheinz

    10. August 2017 um 20:52 Uhr

  • es ist jetzt schon über ein jahr her, keine richtige antwort gefunden lol?

    – Bira

    4. April 2019 um 3:06 Uhr

Sie haben vergessen, die erforderliche Bibliothek zu installieren

composer require league/flysystem-aws-s3-v3

viel Glück

  • Wir verwenden Laravel 8.34 die gesperrt ist league/flysystem:^1.1, und hinderte uns daran, es wie oben zu verwenden. Zum Glück ist hier die Antwort: stackoverflow.com/a/65002651/697579 composer require league/flysystem-aws-s3-v3:"^1.0"

    – fernandojmartin

    9. April 2021 um 19:07 Uhr

  • Ich musste es mit dem ausführen -W Flagge: composer require league/flysystem-aws-s3-v3 "~1.0" -W

    – kevnk

    24. August 2021 um 17:24 Uhr

Für Laravel 8 verwenden

 composer require --with-all-dependencies league/flysystem-aws-s3-v3 "^1.0"

  • Warum v1 verwenden, wenn die letzte Version ab August 2021 2.1.0 ist?

    – u

    22. August 2021 um 21:44 Uhr


  • Als ich diese benutzte, war die 2. Version noch nicht freigegeben

    – Josh Alecyan

    9. November 2021 um 8:31 Uhr

  • tolle Hilfe, löse mein Problem in 2 Minuten!

    – iRviNe48

    19. Juli um 13:10 Uhr

Ich habe meine mit gelöst

composer require guzzlehttp/psr7 "1.8.1"

zunächst ein Downgrade von Version 2.0.0 durchzuführen, da das was-SDK-Paket Version 2.0.0 noch nicht unterstützt

composer require league/flysystem-aws-s3-v3 "~1.0" --update-with-all-dependencies

Laut Laravel-Dokumentation:

https://laravel.com/docs/8.x/filesystem

Sie brauchen diese Abhängigkeit

composer require --with-all-dependencies league/flysystem-aws-s3-v3 "^1.0"

@localheinz Als ich die Bereitstellung durchgeführt habe, führe ich Folgendes aus: Composer installieren

Aber in Heroku installieren die Pakete sie von der Konsole, die das Heroku-Dashboard hat.

Aber wenn ich das Paket hinzufügen oder entfernen möchte league/flysystem-aws-s3-v3 kommt folgende meldung raus:

Das für die Aktualisierung aufgeführte Paket ist nicht installiert. Ignorieren.

Also ich denke da ist ein Cache dazwischen, weil bei mir alles bestens funktioniert.

{
"name": "laravel/laravel",
"description": "The Laravel Framework.",
"keywords": ["framework", "laravel"],
"license": "MIT",
"type": "project",
"require": {
    "php": ">=5.6.4",
    "barryvdh/laravel-debugbar": "^2.4",
    "fzaninotto/faker": "^1.6",
    "laravel/framework": "5.4.*",
    "laravel/socialite": "^3.0",
    "laravel/tinker": "~1.0",
    "unisharp/laravel-ckeditor": "^4.6",
    "league/flysystem-aws-s3-v3": "~1.0"
},
"require-dev": {
    "mockery/mockery": "0.9.*"
},
"autoload": {
    "classmap": [
        "database"
    ],
    "psr-4": {
        "App\\": "app/"
    }
},
"autoload-dev": {
    "psr-4": {
        "Tests\\": "tests/"
    }
},
"scripts": {
    "post-root-package-install": [
        "php -r \"file_exists('.env') || copy('.env.example', '.env');\""
    ],
    "post-create-project-cmd": [
        "php artisan key:generate"
    ],
    "post-install-cmd": [
        "Illuminate\\Foundation\\ComposerScripts::postInstall",
        "php artisan optimize"
    ],
    "post-update-cmd": [
        "Illuminate\\Foundation\\ComposerScripts::postUpdate",
        "php artisan optimize"
    ]           
},
"config": {
    "preferred-install": "dist",
    "sort-packages": true,
    "optimize-autoloader": true
}
  }

Benutzeravatar von يعرب المصطفى
يعرب المصطفى

Bei mir hatte ich das gleiche Problem und habe viele Lösungen ausprobiert, aber nichts hat bei mir funktioniert. Endlich habe ich das herausgefunden flysystem-aws-s3-v2 ist in composer.lock, obwohl ich es benutzt habe flysystem-aws-s3-v3 mit dem Befehl: composer require league/flysystem-aws-s3-v3 was nichts daran ändert composer.lock Was ich also getan habe, ist, dass ich entfernt habe vendor Ordner und composer.lock Datei und ausführen composer install und das hat das problem für mich gelöst.

Benutzeravatar von Gevorg Melkumyan
Georg Melkumjan

Mein Fall war etwas schwieriger, ich musste ein paar verwandte Abhängigkeiten aktualisieren, um es zum Laufen zu bringen. Hauptsächlich habe ich aufgerüstet aws/aws-sdk-php zu der Version, die der Komponist erwähnte, als ich lief:
composer require --with-all-dependencies league/flysystem-aws-s3-v3 "^1.0".

1434130cookie-checkKlasse ‘League\Flysystem\AwsS3v3\AwsS3Adapter’ nicht gefunden (Laravel + Heroku)

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

Privacy policy