无法执行 Laravel 工匠命令
Posted
技术标签:
【中文标题】无法执行 Laravel 工匠命令【英文标题】:Unable to execute Laravel artisan commands 【发布时间】:2014-03-26 12:26:57 【问题描述】:我刚刚安装了最新版本的 Laravel,并尝试从我的 Git Bash 运行以下命令:
php artisan migrate:make create_users_table --table=users --create
这会触发以下错误:
Could not open input file: artisan
我已经尝试了很多我在这个网站上找到的东西,但似乎没有任何效果。有关如何使其工作的任何建议?
【问题讨论】:
只是检查;你在artisan
所在的目录(基本 Laravel 目录)中吗?
我在laravel项目所在的目录下,是的。
好吧,太棒了(你会惊讶于有多少人会说“不”)。我假设您使用的是 Windows(因为您使用的是 Git Bash);我还在学习 Laravel,没有在 Windows 系统上使用它的经验。 This question 或许能帮上忙;你的 PHP 命令工作正常吗?祝你好运!
***.com/questions/21175570/…
@ChrisForrence 好吧,有罪。大声笑。
【参考方案1】:
tl;博士
在项目的根文件夹中运行 composer install
。
说明
当您通过从 GitHub 下载并提取 laravel/laravel 存储库而不是使用 Composer 命令来创建项目时会发生这种情况:
composer create-project laravel/laravel your-project-name
在这种情况下,未安装依赖项,因此包含 Artisan 的 vendor
文件夹不存在。在项目的根文件夹中运行 composer install
将安装依赖项 vendor
文件夹。
更多信息,请看我的另一个answer on how to install Artisan。
旁注
这与您的问题无关,但您的 Artisan 命令有点不足。您从最后忘记了=users
(表名)。此外,如果您创建一个表,则不必使用 --table
选项再次指定表名,因此此命令就足够了:
php artisan migrate:make create_users_table --create=users
【讨论】:
【参考方案2】:你没有工匠。有两个原因:
为了能够运行php artisan <command>
,您必须在您的项目文件夹中,因此首先使用cd
命令移动到该文件夹,然后您可以执行该命令。
您尚未在该文件夹中创建 Laravel 项目。 You must create one with Composer.
【讨论】:
【参考方案3】:在您的根文件夹中运行以下 composer 命令
composer dump-autoload
【讨论】:
【参考方案4】:在您的根目录中有 artisan.php 文件,该文件在内部触发 Illuminate\Console\Application::start($app);
所以沿着这条路走,看看会发生什么。运行 php artisan 时有任何输出吗?当 artisan 不在您的路径(当前目录)中时,通常会显示该错误。
【讨论】:
【参考方案5】:Laravel 需要 PHP 版本 5.5.9。如果您有一些较低的版本,您可能无法执行任何操作,并且根据您的设置可能不会引发任何错误。
【讨论】:
【参考方案6】:我有同样的问题。你需要运行composer update
,然后运行composer install
【讨论】:
以上是关于无法执行 Laravel 工匠命令的主要内容,如果未能解决你的问题,请参考以下文章
无法在工匠自定义命令 Laravel 5.4 中获取模型关系
无法从工匠命令 Laravel/Lumen 进行 Crypt::decrypt