【发布时间】:2014-08-11 04:07:10
【问题描述】:
我不明白这个错误是从哪里来的。我在安装第三方软件包后首先注意到它,并认为这是问题所在。卸载软件包没有任何区别。恢复到早期版本的 Laravel 也没有效果。 (所以现在我回到当前版本,4.2.8。)
这是响应 $ composer update 的完整错误消息——错误重复了 7 次,就在“生成自动加载文件”之后:
PHP Warning: Unexpected character in input: ' in phar:///usr/local/bin/composer/src/Composer/Autoload/ClassMapGenerator.php on line 118
这似乎是指作曲家本身中的一段损坏的代码,而不是 Laravel 树中的损坏文件。我的作曲家副本位于 /usr/local/bin 中,该目录中唯一的文件是作曲家。警告似乎表明 composer 是一个目录,但当然不是。作曲家本身的第 118 行没有任何内容。
我不知道如何解决这个问题,或者它有多重要,或者如何找到问题所在。我需要重新安装作曲家吗?
感谢您的帮助。
针对询问 composer.json 是否是问题的评论,这是我的整个 composer.json 文件。我无法识别那里的任何错误:
{
"name": "laravel/laravel",
"description": "The Laravel Framework.",
"keywords": ["framework", "laravel"],
"license": "MIT",
"require": {
"laravel/framework": "4.2.*"
},
"autoload": {
"classmap": [
"app/commands",
"app/controllers",
"app/models",
"app/database/migrations",
"app/database/seeds",
"app/tests/TestCase.php",
"app/libraries"
]
},
"scripts": {
"post-install-cmd": [
"php artisan clear-compiled",
"php artisan optimize"
],
"post-update-cmd": [
"php artisan clear-compiled",
"php artisan optimize"
],
"post-create-project-cmd": [
"php artisan key:generate"
]
},
"config": {
"preferred-install": "dist"
},
"minimum-stability": "stable"
}
这里是 composer.lock 的第 116-123 行——问题可能出在这儿吗? :
"autoload": {
"psr-0": {
"Whoops": "src/"
},
"classmap": [
"src/deprecated"
]
},
谢谢。
【问题讨论】:
-
检查您的
composer.json文件。 -
谢谢,但我已经非常仔细地检查了 composer.json 几次,我无法识别那里的任何错误代码。我将编辑我的问题以包含整个文件,以防我真的遗漏了那里的东西。
-
试试这个: 1. 删除 Laravel(从头开始,如果有的话) 2. 运行
composer self-update3. 安装 laravel / 更新 -
再次感谢。我忘记了“作曲家自我更新”命令。由于我怀疑问题出在 Laravel 中,所以我想在删除 Laravel 之前尝试运行自我更新。它起作用了——当我运行“composer update”时,错误消息现在消失了。问题解决了:)
标签: php laravel-4 composer-php