无法打开输入文件:工匠

Posted

技术标签:

【中文标题】无法打开输入文件:工匠【英文标题】:Could not open input file: artisan 【发布时间】:2014-11-29 08:38:29 【问题描述】:

尝试新建laravel项目时,CLI出现如下错误:

无法打开输入文件:artisan

脚本 php artisan clear-compiled 处理 post-install-cmd 事件返回错误

我正在使用最新版本的 XAMPP v3.2.1 和 PHP 5.5.15 并启用了 mcrypt(通过发出命令 php -m 确保这一点)。我正在运行 Windows 8.1

【问题讨论】:

看起来这个问题已经过时了。你弄清楚问题了吗?如果您不介意,请与小队的其他成员分享这个问题:) 我认为,php artisan 是从 laravel 站点的根文件夹中调用的。否则会弹出这个错误。 您需要在与您的 artisan 目录相同的级别运行您的 artisan 命令。这将确保你在你的 Laravel 项目中 旁注:最初我认为当php artisan ... 被调用时,它是php 命令的某种选项。原来它指的是一个名为 artisan 的文件,它位于您的 laravel 项目的根目录中。它真的应该被称为artisan.php,因为它是一个实际的 php 脚本,但为了简洁起见,省略了扩展名。 尝试在所有 laravel 代码所在的目录中执行命令。我也发生了,我试图在项目的根文件夹中运行命令,但代码在子目录中 【参考方案1】:

您首先需要create Laravel project,如果您已经有一个,则需要在终端中使用cd 命令转到此项目目录,例如cd myproject

现在您将能够运行任何工匠命令,例如运行 php artisan 将显示可用命令列表。

【讨论】:

在我尝试新建laravel项目时出现这个错误: cd xampp/htdocs 然后 composer create-project laravel/laravel newLaravelProject 开始下载所有需要的依赖,突然出现这个错误。 如果您已将带有 .env 的应用程序文件夹、供应商文件夹、配置文件夹...等移动到其他位置,您可能需要将目录根目录更改为该位置。 这应该是选择的答案。完美运行! 同意。正确答案在这里。我不知道它只能从项目根文件夹中工作。 如果有人能帮忙解决这个问题,我将面临这样的问题***.com/questions/64983129/…【参考方案2】:

我只需要使artisan 可执行。

chmod +x artisan

...然后它可以在没有 php 前缀的情况下工作。

【讨论】:

【参考方案3】:

我检查了一个没有此脚本的现有 Laravel 项目。即使是find / -name 'artisan' 也没有产生任何结果。解决方案很简单,虽然有点奇怪:

curl -L 'https://raw.githubusercontent.com/laravel/laravel/v4.2.11/artisan' > artisan

你可能想选择一个与你安装的 Laravel 版本相匹配的标记版本。

【讨论】:

【参考方案4】:

如果您不在laravel 项目文件夹中,则不能使用php artisan

这就是为什么它说'Could not open input file - artisan'

【讨论】:

当然你必须做一个composer install 几乎一次 我尝试从迁移文件夹进行迁移,我收到了这条消息,您必须位于应用程序的根目录(composer.json 所在的位置)才能使其正常工作【参考方案5】:

如果您的项目位于/home/forge/laravel-project/

你可以像这样正确地执行你的工匠

php /home/forge/laravel-project/artisan ...

【讨论】:

在 Windows 中你可以做php 'E:\path\to_your_domain\artisan' october:up【参考方案6】:

如果你在 Vagrant 中运行你的 Laravel 项目并且刚刚通过 SSH 连接到虚拟机,在你尝试运行 artisan 命令之前不要忘记cd /vagrant

【讨论】:

【参考方案7】:

如果这是您第一次安装 laravel,则在 laravel 目录中创建另一个目录/文件夹,然后移动到该空文件夹并使用以下命令创建另一个项目:

composer create-project --prefer-dist laravel/laravel blog

这将创建一个名为“blog”的新项目,然后回到父 laravel 目录,现在您可以运行以下命令:

php artisan serve

您将收到退货,例如:

laravel deployment server started: http://localhost:8000

见附图

【讨论】:

【参考方案8】:

首先,请确保在 laravel 项目文件夹中,否则终端将无法在项目目录中找到 artisan 文件,并且您拉取启动服务器的任何后续请求都将被拒绝。

演示

假设我们的 laravel 项目名称是 blog 并且位于 C:\laravel 然后我们有:C:\laravel\blog

在哪里打开终端

导航到<strong>C:\laravel\blog</strong> 目录并打开命令窗口(终端)。输入以下代码:

启动服务器的 Laravel 终端代码

php artisan serve --host 127.0.0.1

【讨论】:

【参考方案9】:

在解决了这个问题之后,我发现你需要通过运行sudo find / -name artisan来找到工匠所在的位置, 然后从那里运行命令php artisan ....

【讨论】:

【参考方案10】:

安装composer后,需要创建项目:

composer create-project laravel/laravel /path/to/tour/project

您可以看到documentation,对于您的 php 版本,您可以安装的最新 Laravel 是 5.0。

现在这里是最新版本,需要> php7.0。这是documentation。

【讨论】:

【参考方案11】:

我的诀窍是从我的项目目录中执行cd src,然后然后使用php artisan 命令,因为我的artisan 文件位于src 文件夹中。这是我的项目结构:

project
|__ config
|__ src
    |__ app
    |__ ..
    |__ artisan  // hello there!
    |__ ...
|__ ...

【讨论】:

【参考方案12】:

很可能您不在正确的目录中!

【讨论】:

【参考方案13】:

发生此错误是因为您没有在项目中安装 composer。

在您的项目路径中运行composer install 命令。

【讨论】:

【参考方案14】:

首先从以下链接创建项目创建larave 7项目:Create Project

现在您需要使用以下命令进入您的项目文件夹:

cd myproject

现在尝试运行artisan 命令,例如php artisan

如果您没有安装 compose,也可能会发生这种情况。所以如果你没有安装 composer 然后运行composer install 并再次尝试artisan 命令。

【讨论】:

【参考方案15】:

如果你说my-project/app/somefolder 在终端cd .. 中运行两次以进入my-project/ 文件夹

【讨论】:

【参考方案16】:

你需要首先创建 Laravel 项目,如果你已经有一个项目,你需要在终端中使用 cd 命令进入这个项目目录,例如 cd myproject。

示例:C:\xampp new\htdocs\project laravel\LaravelProject>php artisan serve

现在您将能够运行任何 artisan 命令,例如运行 php artisan 将显示可用命令列表。

【讨论】:

【参考方案17】:

需要注意的另一件事是,如果您有一个来自非公共位置的符号链接,该链接托管您的项目代码为 public_html - 在符号链接位置 (public_html) 中运行 php artisan 将导致此错误。 您似乎需要在实际项目目录中才能使php artisan 工作。

【讨论】:

【参考方案18】:

我也有同样的问题。我也在laravel项目目录下。对我有用的只是更改工匠文件的权限。

Linux

chmod 777 artisan

对于窗户

使用文件属性

【讨论】:

【参考方案19】:

确保您的当前目录是您的项目名称

例如,您的项目名称是 demo,位置是 f:/demo
f:demo> php artisan serve

【讨论】:

以上是关于无法打开输入文件:工匠的主要内容,如果未能解决你的问题,请参考以下文章

Laravel 工匠服务错误

无法打开输入文件 [COMPOSER]

为啥提示时无法打开输入文件?

laravel 无法打开输入文件:artisan (5.3)

文件夹默认用vscode打开电脑无法打开

作曲家错误无法打开输入文件:作曲家