我安装了PHP项目中的Composer,并希望使用自动加载器。在this页面上,我读了composer.json
文件应该是什么样子以及我应该运行命令dump-autoload
。我的composer.json
文件如下所示
{
"require-dev":{
"phpunit/phpunit":"4.5.*",
"autoload":{
"psr-0":{
"Yii\\":"yii-1.1.14.f0fee9/"
}
}
}
}
当我从终端php composer.phar dump-autoload
运行时,收到以下错误消息。
autoload.php
文件?答案 0 :(得分:2)
autoload
应该移出require-dev
:
{
"require-dev":{
"phpunit/phpunit":"4.5.*"
},
"autoload":{
"psr-0":{
"Yii\\":"yii-1.1.14.f0fee9/"
}
}
}
您可以使用composer validate
测试您的composer.json文件。您的原始文件已退回:
./composer.json is invalid, the following errors/warnings were found:
require-dev.autoload : invalid value, must be a string containing a version constraint
the property name is required
the property description is required
No license specified, it is recommended to do so. For closed-source software you may use "proprietary" as license.
答案 1 :(得分:0)
您的composer.json文件不正确。
require-dev
和autoload
是两个主要部分。
这应该有效:
{
"require-dev":{
"phpunit/phpunit":"4.5.*"
},
"autoload":{
"psr-0":{
"Yii\\":"yii-1.1.14.f0fee9/"
}
}
}