AwsS3Adapter исключение появляется локально, но не на сервере разработки - PullRequest
0 голосов
/ 29 мая 2019

Я работаю локально над проектом Laravel и неожиданно начал получать следующее исключение:

ErrorException in FilesystemManager.php line 193: Class 'League\Flysystem\AwsS3v3\AwsS3Adapter' not found (View: /Users/mypetproject/resources/views/layouts/topheader.blade.php) (View: /Users/mypetproject/resources/views/layouts/topheader.blade.php) (View: /Users/mypetproject/resources/views/layouts/topheader.blade.php)

Версия этого запущена на сервере без каких-либо проблем.Просто чтобы проверить, я проверил ту же ветку, сравнил файлы composer.json и composer.lock и они одинаковы локально и на сервере, сделал composer update на всякий случай, и он все еще дает сбой локально, но не на сервере,Файл .env также такой же.

FilesystemManager находится в vender / laravel / framework / src / Illuminate / Filesystem и действительно пытается use League\Flysystem\AwsS3v3\AwsS3Adapter as S3Adapter;, однако это также относится и к версии, работающей насервер.

Как примечание, я вообще не использую S3, и я действительно не хочу устанавливать league/flysystem-aws-s3-v3, так как я не использую его.

Любая идеячто может быть не так?

Это мой composer.json

{
    "name": "laravel/laravel",
    "description": "The Laravel Framework.",
    "keywords": ["framework", "laravel"],
    "license": "MIT",
    "type": "project",
    "require": {
        "php": ">=5.5.9",
        "laravel/framework": "5.3.*",
        "laravelcollective/html": "5.3.*",
        "guzzlehttp/guzzle": "^6.2",
        "google/cloud-storage": "1.1.5"
    },
    "require-dev": {
        "fzaninotto/faker": "~1.4",
        "mockery/mockery": "0.9.*",
        "phpunit/phpunit": "~4.0",
        "phpspec/phpspec": "~2.1"
    },
    "autoload": {
        "classmap": [
            "database"
        ],
        "psr-4": {
            "App\\": "app/"
        }
    },
    "autoload-dev": {
        "classmap": [
            "tests/TestCase.php"
        ]
    },
    "scripts": {
        "post-install-cmd": [
            "php artisan clear-compiled",
            "php artisan optimize"
        ],
        "post-update-cmd": [
            "php artisan clear-compiled",
            "php artisan optimize"
        ],
        "post-root-package-install": [
            "php -r \"copy('.env.example', '.env');\""
        ],
        "post-create-project-cmd": [
            "php artisan key:generate"
        ]
    },
    "config": {
        "preferred-install": "dist"
    },
    "minimum-stability": "dev",
    "prefer-stable": true
}

1 Ответ

0 голосов
/ 29 мая 2019

Я наконец отследил его до файлов autoload_static.php и autoload_classmap.php в vendor / composer /

По какой-то причине он ссылался на неправильный файл (ранее использовавший S3):

'App\\IsoClasses\\IsoStorage' => __DIR__ . '/../..' . '/app/IsoClasses/IsoStorageS3.php',

обновлено до

'App\\IsoClasses\\IsoStorage' => __DIR__ . '/../..' . '/app/IsoClasses/IsoStorage.php',

и теперь это работает.

Что странно, так это то, что файлы сервера dev также имеют это, но это работает на сервере dev без проблем.

...