通过作曲家成功安装 Phalcon/devtools 后获得"command not found: phalcon"


Software: MacOS
Phalcon: 5.0.0RC4
Phalcon/Devtools: 4.2.0

我新创建了phalcon 5.0存储库。我成功运行

composer install
composer require phalcon/devtools

然而,当我尝试运行phalcon命令时,我会得到

zsh: command not found: phalcon

我检查了它是否安装成功,并尝试重新安装
php-m返回phalcon也已安装:

php -m | grep phalcon
phalcon

扩展名在php.ini文件中

extension="phalcon.so"

我遗漏了什么吗?

phalcon/devtools包将phalcon.php可执行文件链接到您的编写器bin-dir

如下获取:

composer config bin-dir

默认为./vendor/bin。安装的符号链接是./vendor/bin/phalcon.php

您可以按如下方式运行命令:

./vendor/bin/phalcon.php [..]

为了方便访问,您可以自动将./vendor/bin添加到PATH(即使用direnv(

# .envrc
PATH_add ./vendor/bin

或者您可以在项目目录中创建一个./bin目录,并将phalcon.php符号链接为phalcon

mkdir ./bin
ln -sfn ./vendor/bin/phalcon.php ./bin/phalcon

现在您可以将./bin添加到PATH:中

export PATH="${PWD}/bin:${PATH}"

并使用以下命令调用phalcon CLI:

phalcon [..]

除了Nicolai的答案之外,还可以这样调用phalcon:

vendor/bin/phalcon commands

在我的情况下,我不想全局调用phalcon,所以我将文件复制到项目目录中,并将其命名为phalcon4
然后我编辑了文件中的路径,如

$addpath = '/vendor/phalcon';
$GLOBALS['_composer_bin_dir'] = __DIR__ .$addpath;
$GLOBALS['_composer_autoload_path'] = __DIR__ .$addpath. '/..'.'/autoload.php';
// the rest of the code
include __DIR__ .$addpath. '/..'.'/phalcon/devtools/phalcon';

现在我可以运行这样的命令:

php phalcon4 commands

尽管如此,devtools 4.2无法与phalcon 5一起运行,因此该命令只是抛出了一个错误。

相关内容

  • 没有找到相关文章

最新更新