Laravel 4.2 Composer 安装错误:“无法扫描类”

声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow 原文地址: http://stackoverflow.com/questions/26647375/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me): StackOverFlow

提示:将鼠标放在中文语句上可以显示对应的英文。显示中英文
时间:2020-09-14 10:20:46  来源:igfitidea点击:

Laravel 4.2 Composer install error: "could not scan for classes"

phplaravellaravel-4composer-php

提问by Anna.Klee

I want to install on my new Laravel 4.2 installation some packages via Composer. However, I am getting an exception.

我想通过 Composer 在我的新 Laravel 4.2 安装上安装一些软件包。但是,我得到了一个例外。

This is my Composer file:

这是我的作曲家文件:

{
    "name": "laravel/laravel",
    "description": "The Laravel Framework.",
    "keywords": ["framework", "laravel"],
    "license": "MIT",
    "license": "MIT",   
    "require": {
        "laravel/framework": "4.2.*",
        "zizaco/confide": "~4.0@dev",
        "zizaco/entrust": "1.2.*@dev",
        "barryvdh/laravel-ide-helper": "1.*",
        "fzaninotto/faker": "1.3.*@dev",
        "bllim/datatables": "~1.3",
        "barryvdh/laravel-debugbar": "~1.7"
    },
    "require-dev": {
        "way/generators": "~2.6",
        "barryvdh/laravel-ide-helper": "~1.11"
    },
    "autoload": {
        "classmap": [
            "app/commands",
            "app/controllers",
            "app/models",
            "app/database/migrations",
            "app/database/seeds",
            "app/tests/TestCase.php",
            "app/controllers/admin",
            "app/controllers/user"
        ]
    },
    "scripts": {
        "post-install-cmd": [
            "php artisan clear-compiled",
            "php artisan optimize"
        ],
        "post-update-cmd": [
            "php artisan clear-compiled",
            "php artisan optimize"
        ],
        "post-update-cmd":[
            "php artisan ide-helper:generate"
        ],
        "post-create-project-cmd": [
            "php artisan key:generate"
        ]
    },
    "config": {
        "preferred-install": "dist"
    },
    "minimum-stability": "stable"
}

When running composer installI get:

运行时composer install我得到:

$ composer install
Loading composer repositories with package information
Installing dependencies (including require-dev) from lock file
Warning: The lock file is not up to date with the latest changes in composer.jso
n. You may be getting outdated dependencies. Run update to update them.
Nothing to install or update
Generating autoload files



  [RuntimeException]
  Could not scan for classes inside "app/controllers/admin" which does not ap
  pear to be a file nor a folder



install [--prefer-source] [--prefer-dist] [--dry-run] [--dev] [--no-dev] [--no-p
lugins] [--no-custom-installers] [--no-scripts] [--no-progress] [-v|vv|vvv|--ver
bose] [-o|--optimize-autoloader] [packages1] ... [packagesN]

This is basically a fresh Laravel installation. Why do I get the error:

这基本上是一个全新的 Laravel 安装。为什么我收到错误:

Could not scan for classes inside "app/controllers/admin" which does not appear to be a file nor a folder

UPDATE

更新

Using composer update:

使用composer update

$ composer update
Loading composer repositories with package information
Updating dependencies (including require-dev)
  - Removing mockery/mockery (0.9.2)
  - Removing phpunit/phpunit (4.3.4)
  - Removing phpunit/php-code-coverage (2.0.11)
  - Removing phpunit/php-token-stream (1.3.0)
  - Removing phpunit/php-file-iterator (1.3.4)
  - Removing phpunit/php-timer (1.0.5)
  - Removing phpunit/phpunit-mock-objects (2.3.0)
  - Removing phpunit/php-text-template (1.2.0)
  - Removing doctrine/instantiator (1.0.4)
  - Removing symfony/yaml (v2.5.6)
  - Removing sebastian/comparator (1.0.1)
  - Removing sebastian/diff (1.2.0)
  - Removing sebastian/environment (1.2.0)
  - Removing sebastian/exporter (1.0.2)
  - Removing sebastian/version (1.0.3)
  - Removing summerstreet/woodling (v0.1.6)
Writing lock file
Generating autoload files



  [RuntimeException]
  Could not scan for classes inside "app/controllers/admin" which does not ap
  pear to be a file nor a folder



update [--prefer-source] [--prefer-dist] [--dry-run] [--dev] [--no-dev] [--lock]
 [--no-plugins] [--no-custom-installers] [--no-scripts] [--no-progress] [--with-
dependencies] [-v|vv|vvv|--verbose] [-o|--optimize-autoloader] [packages1] ... [
packagesN]

采纳答案by Jerodev

Try using composer update. That is what it says in the error.

尝试使用composer update. 这就是它在错误中所说的。

...You may be getting outdated dependencies. Run update to update them...

Update:

更新:

Composer is trying to find the folder app/controllers/adminwhich is no standard folder in laravel. Are you sure this folder exists? If not, you could try removing these, and other custom folders, from the composer.json, and add them manually. You could also create the directories and leave the composer.json untouched.

Composer 正在尝试app/controllers/admin在 laravel 中找到不是标准文件夹的文件夹。你确定这个文件夹存在吗?如果没有,您可以尝试从 composer.json 中删除这些和其他自定义文件夹,并手动添加它们。您还可以创建目录并保持 composer.json 不变。