3

pear を使用して Codesniffer をインストールしようとしましたが、Mac が phpcs コマンドを認識しません。

梨の設定

Configuration (channel pear.php.net):
=====================================
Auto-discover new Channels     auto_discover    1
Default Channel                default_channel  pear.php.net
HTTP Proxy Server Address      http_proxy       <not set>
PEAR server [DEPRECATED]       master_server    pear.php.net
Default Channel Mirror         preferred_mirror pear.php.net
Remote Configuration File      remote_config    <not set>
PEAR executables directory     bin_dir          /usr/local/pear/bin
PEAR documentation directory   doc_dir          /usr/local/pear/docs
PHP extension directory        ext_dir          /opt/local/lib/php/extensions/no-debug-non-zts-20090626
PEAR directory                 php_dir          /usr/local/pear/share/pear
PEAR Installer cache directory cache_dir        /private/tmp/pear/cache
PEAR configuration file        cfg_dir          /usr/local/pear/cfg
directory
PEAR data directory            data_dir         /usr/local/pear/data
PEAR Installer download        download_dir     /tmp/pear/install
directory
PHP CLI/CGI binary             php_bin          /opt/local/bin/php
php.ini location               php_ini          /opt/local/etc/php5/php.ini-development
--program-prefix passed to     php_prefix       <not set>
PHP's ./configure
--program-suffix passed to     php_suffix       <not set>
PHP's ./configure
PEAR Installer temp directory  temp_dir         /tmp/pear/install
PEAR test directory            test_dir         /usr/local/pear/tests
PEAR www files directory       www_dir          /usr/local/pear/www
Cache TimeToLive               cache_ttl        3600
Preferred Package State        preferred_state  stable
Unix file mask                 umask            22
Debug Log Level                verbose          1
PEAR password (for             password         <not set>
maintainers)
Signature Handling Program     sig_bin          /usr/local/bin/gpg
Signature Key Directory        sig_keydir       /opt/local/etc/pearkeys
Signature Key Id               sig_keyid        <not set>
Package Signature Type         sig_type         gpg
PEAR username (for             username         <not set>
maintainers)
User Configuration File        Filename         /Users/anthonygordon/.pearrc
System Configuration File      Filename         /opt/local/etc/pear.conf

私はphp_binをチェックし、php実行可能ファイルがそこにあります。

phpcs を実行すると、command not found

私はナシをアップグレードしようとしましたが、コードスニファーをアンインストールし、再インストールしました。インストールリストを実行すると、

梨一覧

Package          Version State
Archive_Tar      1.3.10  stable
Console_Getopt   1.3.1   stable
PEAR             1.9.4   stable
PHP_CodeSniffer  1.4.0   stable
Structures_Graph 1.0.4   stable
XML_Util         1.2.1   stable
4

1 に答える 1

7

phpcs スクリプトは 内にある必要があるbin_dirため、/usr/local/pear/bin/phpcsそのファイルが最初に存在することを確認してください。そうでない場合は、インストールに問題がありました。

直接実行できるかどうかを確認します。php /usr/local/pear/bin/phpcs -?

それが PHPCS ヘルプを出力する場合、PHPCS は正しくインストールされており、問題はおそらく $PATH にあります。実行echo $PATHして、そこに表示されていることを確認/usr/local/pear/binします。そうでない場合は、パス設定を変更するか、実行可能なスクリプトを別の場所に配置するように PEAR を構成できます。

たとえば、$PATH には/usr/local/bin(私の Mac のように) 既に含まれている可能性があるため、次のように変更できますbin_dir

pear uninstall php_codesniffer
pear config-set bin_dir /usr/local/bin
pear install php_codesniffer

そして、phpcsコマンドを再試行してください。

于 2012-11-01T21:48:09.967 に答える