无法执行 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 4中的工匠命令无法加载php_mcrypt

无法在 Laravel Homestead 中运行工匠命令

无法在工匠自定义命令 Laravel 5.4 中获取模型关系

无法从工匠命令 Laravel/Lumen 进行 Crypt::decrypt

无法执行 php artisan 命令 [php 致命错误 [

工匠的命令不被承认