我试图创建一个新的Laravel项目,以便在Homestead中使用,因为我过去已经成功很多次了,并且发出了以下命令:
composer create-project --prefer-dist laravel/laravel test
但是不幸的是,它失败并显示Composer could not find a composer.json file in /home/vagrant/code/test...
,并将“测试”文件夹留空。
完整的输出在这里:
1/2: http://repo.packagist.org/p/provider-latest$d0bd0b2315439b65010ddf266ff3cd834b7f92edb850d5dd1f8a40c44586751f.json
2/2: http://repo.packagist.org/p/provider-2019-04$0835fd3847a1c8f8d46ee6dd6da638ec6e9846bf1dce10d9b2f10a0e953bbd04.json
Finished: success: 2, skipped: 0, failure: 0, total: 2
1/2: http://repo.packagist.org/p/provider-latest$d0bd0b2315439b65010ddf266ff3cd834b7f92edb850d5dd1f8a40c44586751f.json
2/2: http://repo.packagist.org/p/provider-2019-04$0835fd3847a1c8f8d46ee6dd6da638ec6e9846bf1dce10d9b2f10a0e953bbd04.json
Finished: success: 2, skipped: 0, failure: 0, total: 2
Installing laravel/laravel (v5.8.17)
- Installing laravel/laravel (v5.8.17): Loading from cache
Created project in test
[InvalidArgumentException]
Composer could not find a composer.json file in /home/vagrant/code/test
To initialize a project, please create a composer.json file as described in the https://getcomposer.or
g/ "Getting Started" section
create-project [-s|--stability STABILITY] [--prefer-source] [--prefer-dist] [--repository REPOSITORY] [--repository-url REPOSITORY-URL] [--dev] [--no-dev] [--no-custom-installers] [--no-scripts] [--no-progress] [--no-secure-http] [--keep-vcs] [--remove-vcs] [--no-install] [--ignore-platform-reqs] [--] [<package>] [<directory>] [<version>]
某些情况:我最近将我的Homestead流浪者盒子更新为v8.0.0,并将Homestead源代码更新为v9.0.1(然后由于here中所述的异常行为而降级为v8.0.1)。上面报告的创建项目问题是同时使用Homestead v9.0.1和v8.0.1。发生的。
更新
我尝试将一个空的composer.json文件添加到“测试”文件夹,但这会导致"./composer.json" does not contain valid JSON
错误。
我什至从laravel/laravel project复制到composer.json文件,但这会导致Could not scan for classes inside "database/seeds" which does not appear to be a file nor a folder
运行时异常(这是正确的,因为“ test”文件夹仅包含“ vendor”文件夹,一个composer.json文件和一个composer.lock文件)。
我已经圈了几天,所以任何帮助将不胜感激。
答案 0 :(得分:1)
这真是一个权限问题,很好。
我要做的是,我不使用宅基地,但泊坞窗(类似的想法)是,我不从主机运行那些composer命令或laravel命令,而是从虚拟机内部运行。
这样,您就不必sudo chmod -R a+rwx /home/vagrant/code/test
了,这很不好(因为它授予用户,组和其他用户读/写/执行权限)
只需SSH进入您的家用计算机,运行composer create-project --prefer-dist laravel/laravel test
,然后运行php artisan package:discover
,您就应该避免所有这些麻烦。