我有时会遇到这个问题,在 windows、mac、ubuntu 上...
我有这个 composer.json:
{
"name": "laravel/laravel",
"description": "The Laravel Framework.",
"keywords": ["framework", "laravel"],
"license": "MIT",
"require": {
"laravel/framework": "4.2.*",
"zizaco/confide": "~4.0@dev",
"zizaco/entrust": "1.2.*@dev",
"guzzlehttp/guzzle": "~4.0"
},
"require-dev": {
"phpunit/phpunit": "4.1.4",
"behat/behat": "3.0.12",
"behat/mink": "1.5.0",
"behat/mink-extension": "2.0.0",
"behat/mink-goutte-driver": "1.0.9",
"codeception/verify": "0.2.7",
"codeception/specify": "0.3.6"
},
"autoload": {
"classmap": [
"app/commands",
"app/controllers",
"app/models",
"app/database/migrations",
"app/database/seeds",
"app/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-create-project-cmd": [
"php artisan key:generate"
]
},
"config": {
"bin-dir": "bin/",
"preferred-install": "dist"
},
"minimum-stability": "stable"
这是带有一些测试包的 Laravel 4。
在 composer 安装或 composer 更新后,我的项目中没有创建目录“bin”。
我应该有一个用于 phpunit 的二进制文件和另一个用于 behat 的二进制文件。所以我必须使用像 vendor/behat/bin/behat 和 vendor/phpunit/phpunit/phpunit 这样的命令,这很痛苦。
知道为什么二进制文件不在“bin”文件夹中吗?
昨天,一些包较少的项目,我有一个二进制文件夹,里面有 phpunit 二进制文件。现在没了。我不明白。
最佳答案
今天我也遇到了这种情况。虽然我还没有弄清楚为什么会发生这种情况,但一个肮脏的解决方法是删除 vendor
文件夹并运行 composer install
。
关于php - Composer 未复制到指定的 bin-dir 目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25165493/