2017-07-14 10 views
0

パスを使用して、ローカルリポジトリパッケージを作者に持っていて、まだ開発中です。問題は、それは私にそれをインストールするエラーが与えられているということです。Composer - 依存関係のある開発でローカルパッケージをインストールするとエラーが発生する

エラーメッセージ:

パッケージ情報とロード作曲リポジトリ(必要-devを含む)
更新の依存関係
あなたの要件は、パッケージのインストールセットに解決することができませんでした。

問題1:ベンダー/ packageB *ため

  • インストール要求 - ベンダーによって>充足/ packageB [DEV-マスタ]。
  • ベンダー/パッケージB dev-masterにはvendor/packageAが必要ですdev-master - >一致するパッケージが見つかりません。

考えられる原因:

  • パッケージ名
  • パッケージにタイプミスが設定あなたの最低限の安定性に応じて安定した十分なバージョンでは使用できません

だから、私が持っていることを説明するには、これを考えてください。

最初のパッケージは、packageAという依存関係をインストールします。そして、すべてのものが期待通りに機能します。私は(この場合はpackageAで)packageBとその依存関係をインストールしたいことを、

[ 
    "name": "vendor/packageB", 
    "repositories": [ 
     { 
      "type": "path", 
      "url": "/vendor/packageA/" 
     } 
    ], 
    "require": { 
     "vendor/packageA": "*" 
    }, 
    "minimum-stability": "dev" 
] 

そして、第二のパッケージ: 以下composer.jsonファイルの抜粋を参照してください。これはここに誤りを与えます。 以下composer.jsonファイルの抜粋を参照してください:

[ 
    "name": "vendor/packageC", 
     "repositories": [ 
      { 
       "type": "path", 
       "url": "/vendor/packageB/" 
      } 
     ], 
     "require": { 
      "vendor/packageB": "*" 
     }, 
     "minimum-stability": "dev" 
] 

はおそらく作曲で地域開発の依存関係を使用することはできません、これは現時点では私には非常に明確ではありません。

だから、私の疑問は、これはとは何かである:

  • 「最小の安定性」、これは全て「DEV」であるからでしょうか?
  • 、または私がローカルパッケージを使用しているため(packagistやgithubではなく)
  • 他に何かがありますか?

私はパッケージAを置くときにそれをインストールすることができます。また、パッケージBの依存関係としてもインストールできます。それが私がそれが働くことがわかった唯一の方法でした。

ありがとうございました!

+0

は、完全なエラーメッセージの上にある:これはpackageCのcomposer.jsonがpackageAのリポジトリを見つけるための情報を含める必要があることを、意味あなたのケースでは

をmdの?私はあなたのpackageCの中にpackageAのリポジトリがないと思います。おそらく、作者はこのリポジトリの依存関係のセクションをスキップしてセキュリティ問題を引き起こす可能性があります。 –

+0

私はエラーメッセージを更新していますので、これは完全なエラーメッセージ@NormanMです。 – user38561

答えて

0

この問題は、作曲家のよくある質問に記載されています。 https://getcomposer.org/doc/faqs/why-can 't-composer-load-repositories-recursively。

[ 
"name": "vendor/packageC", 
    "repositories": [ 
     { 
      "type": "path", 
      "url": "/vendor/packageB/" 
     }, 
     { 
      "type": "path", 
      "url": "/vendor/packageA/" 
     } 
    ], 
    "require": { 
     "vendor/packageB": "*" 
    }, 
    "minimum-stability": "dev" 
] 
+0

ありがとう、私はこの時点で唯一の方法と思います! – user38561

関連する問題