简体   繁体   English

php/laravel — php 工匠服务 — opensuse 15.0 错误

[英]php/laravel — php artisan serve — opensuse 15.0 error

So I am new to php/laravel and am trying to set up my environment here with composer on opensuse 15.0.所以我是 php/laravel 的新手,我正在尝试在 opensuse 15.0 上使用 composer 设置我的环境。

When I try to run php artisan migrate当我尝试运行php artisan migrate

I get this error:我收到此错误:

PHP Warning:  require(/home/mattyo/FirstLaravelProject/matt-project-laravel/vendor/autoload.php): failed to open stream: No such file or directory in /home/mattyo/FirstLaravelProject/matt-project-laravel/artisan on line 18
PHP Fatal error:  require(): Failed opening required '/home/mattyo/FirstLaravelProject/matt-project-laravel/vendor/autoload.php' (include_path='.:/usr/share/php7:/usr/share/php7/PEAR') in /home/mattyo/FirstLaravelProject/matt-project-laravel/artisan on line 18

I get the same error when trying to run php artisan serve .尝试运行php artisan serve时出现同样的错误。

I have tried to run composer update along with composer install composer update --no-scripts and had no luck.我试图与composer install composer update --no-scripts一起运行composer update并且没有运气。

Any help would be greatly appreciated.任何帮助将不胜感激。

here's my composer.json这是我的作曲家。json

    "name": "laravel/laravel",
    "type": "project",
    "description": "The Laravel Framework.",
    "keywords": [
        "framework",
        "laravel"
    ],
    "license": "MIT",
    "require": {
        "php": "^7.2.5|^8.0",
        "fideloper/proxy": "^4.4",
        "fruitcake/laravel-cors": "^2.0",
        "guzzlehttp/guzzle": "^6.3.1|^7.0.1",
        "laravel/framework": "^7.29",
        "laravel/tinker": "^2.5"
    },
    "require-dev": {
        "facade/ignition": "^2.0",
        "fakerphp/faker": "^1.9.1",
        "mockery/mockery": "^1.3.1",
        "nunomaduro/collision": "^4.3",
        "phpunit/phpunit": "^8.5.8|^9.3.3"
    },
    "config": {
        "optimize-autoloader": true,
        "preferred-install": "dist",
        "sort-packages": true
    },
    "extra": {
        "laravel": {
            "dont-discover": []
        }
    },
    "autoload": {
        "psr-4": {
            "App\\": "app/"
        },
        "classmap": [
            "database/seeds",
            "database/factories"
        ]
    },
    "autoload-dev": {
        "psr-4": {
            "Tests\\": "tests/"
        }
    },
    "minimum-stability": "dev",
    "prefer-stable": true,
    "scripts": {
        "post-autoload-dump": [
            "Illuminate\\Foundation\\ComposerScripts::postAutoloadDump",
            "@php artisan package:discover --ansi"
        ],
        "post-root-package-install": [
            "@php -r \"file_exists('.env') || copy('.env.example', '.env');\""
        ],
        "post-create-project-cmd": [
            "@php artisan key:generate --ansi"
        ]
    }
}

After running composer global require laravel/installer I received the following error message:运行composer global require laravel/installer后,我收到以下错误消息:

Changed current directory to /home/mattyo/.config/composer
Using version ^3.0 for laravel/installer
./composer.json has been updated
Running composer update laravel/installer
Loading composer repositories with package information
Updating dependencies
Your requirements could not be resolved to an installable set of packages.

  Problem 1
    - laravel/installer[v3.0.0, ..., v3.0.1] require ext-zip * -> it is missing from your system. Install or enable PHP's zip extension.
    - laravel/installer[v3.1.0, ..., v3.2.0] require php ^7.2.9 -> your php version (7.2.5) does not satisfy that requirement.
    - Root composer.json requires laravel/installer ^3.0 -> satisfiable by laravel/installer[v3.0.0, v3.0.1, v3.1.0, v3.2.0].

To enable extensions, verify that they are enabled in your .ini files:
    - /etc/php7/cli/php.ini
    - /etc/php7/conf.d/ctype.ini
    - /etc/php7/conf.d/dom.ini
    - /etc/php7/conf.d/iconv.ini
    - /etc/php7/conf.d/json.ini
    - /etc/php7/conf.d/mbstring.ini
    - /etc/php7/conf.d/openssl.ini
    - /etc/php7/conf.d/pdo.ini
    - /etc/php7/conf.d/pdo_sqlite.ini
    - /etc/php7/conf.d/phar.ini
    - /etc/php7/conf.d/sqlite3.ini
    - /etc/php7/conf.d/tokenizer.ini
    - /etc/php7/conf.d/xmlreader.ini
    - /etc/php7/conf.d/xmlwriter.ini
You can also run `php --ini` inside terminal to see which files are used by PHP in CLI mode.

Installation failed, reverting ./composer.json to its original content.

It seems the autoload.php file wasn't created by Composer for some reason.由于某种原因,Composer 似乎没有创建 autoload.php 文件。 try composer dump-autoload and see if it works by running php artisan in the terminal.尝试composer dump-autoload并通过在终端中运行php artisan来查看它是否有效。

If this issue still exists, remove the ./vendor directory with rm -rf vendor/* and remove composer cache composer clearcache .如果此问题仍然存在,请使用rm -rf vendor/*删除./vendor目录并删除 composer cache composer clearcache Then run composer install again然后再次运行composer install

If none of the above solved the problem, Check if the composer.json file contains wrong or missing dependencies.如果以上方法都不能解决问题,请检查composer.json文件是否包含错误或缺少的依赖项。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM