skillup

技術ブログ

PHP

composer global require

投稿日:2017年6月29日 更新日:

composerでのglobal requireに関して。

composerでライブラリを読み込むとき、一般的には下記のどちらかで読み込むことが多いです。

  • composer.jsonに記述
  • composer require "ライブラリ"

これらはともにローカル(今あるプロジェクト)内でライブラリを読み込ませる行為になります。

例えば今ログインしているユーザー全体であるライブラリを使いたいときは composer global require ライブラリ などとやって読み込ませることができます。

私の場合jenkinsでライブラリを使いたいときにサーバー全体にcomposerでインストールを行いました。

こうしますとライブラリの入ったディレクトリがホームディレクトリに配置されます。

あとはPATHも通しておきましょう。

これで特定ユーザーでログインした時には特定のプロジェクトによらず、インストールしたライブラリを使うことができます。
composer global

注意点

composer globalですが、依存関係がうまく解消できずエラーが起きることがあるようです。

わたしもphpdocumentをcomposer globalで読み込もうとしたときに下記のようなエラーが起こりました。

より安全な方法としてはcgrというコマンドを使用したほうが良いようです。情報がまだないため調査中ですが・・・

一応参考リンク(ただし英語っす)

Fixing the Composer Global Command

https://github.com/consolidation/cgr

-PHP
-

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

PHPのオートローディング

大規模開発では扱うファイルが増えるため、必要なクラスの読み込みが煩雑になるケースが多いです。 Contents1 従来のPHPのファイルのロード2 オートローディングとは3 サンプルソース4 メモ5 …

no image

アプリケーションアーキテクチャについて 〜ドメインモデルに関して〜

前回のトランザクションスクリプトパターンの反省から 今回はいわゆるドメインモデルの具体例に関して。 ドメイン駆動型設計には以下のような特徴があります。 大きく、アプリケーションの構成を以下のように分け …

no image

正規表現(/を含むとき)

PHPの正規表現ですが、判定する文字列の中にスラッシュが入っている時の処理はデリミタを//ではなく{}でくくればOKです。 例えば数字2桁/数字1桁をチェックしたいとき [crayon-648140f …

no image

CakePHP3でのコレクションに関して

プログラミングにおいて基礎となるのは配列、ハッシュの処理とオブジェクト指向の使いこなしです。 配列、ハッシュの処理に関しては自前でメソッドを書いてもよいですが、バグの温床になりやすいので、ライブラリを …

no image

inotifyによる検知

以前、pynotifyというpythonの検知プログラムを書きましたが、元々はinotifyというLinux上のパッケージのライブラリが元になっています。 以前調べたリンク 監視検知処理に関して 実務 …

アーカイブ