2017-01-12 3 views
0

私はpackagist.comでプライベートコンポーザーパッケージを作成しましたが、 composer requireコマンドを使用してフェッチしました。私のパッケージはルートにあるベンダのフォルダの下に来ます。作者プライベートパッケージの問題

しかし、私はapp/codeフォルダに入れたいと思います。 composer.jsonのパラメータはapp/codeを設定できるので、app/code /の下に来ます。

答えて

0

はいあります。作曲家documentationによると、あなたのプロジェクトでクラスを読み込むためにPSR-4仕様が使用されている場合、下のスニペットをcomposer.jsonファイルに追加すると動作します。

NB:ProjectNameSpaceをプロジェクトの基本名前空間に変更する必要があります。

... 
    "autoload": { 
    "psr-4": { 
     "ProjectNameSpace\\": "app/code" 
    } 
    }, 
... 
+0

私は同じことを試みましたが、それでもパッケージはベンダのディレクトリに配置されています。 –

0

理論的には、コンポーザーはベンダのディレクトリにコードを置くことはできません。コードは外部的なので、作曲家だけが更新することができます。 app/code内にあるべきではありません。これは、プロジェクトのために変更するコードだけがapp/codeになければならないからです。

Magentoプロジェクトを作成する場合は、バージョニングツールで休止ファイルを使用する必要があります。

  • アプリ/ *
  • composer.json
  • composer.lock
  • の.htaccess
  • のindex.php

他のファイルには、作曲者によって処理されます。

実際にそれを行う必要がありますが、何もする必要がない場合は、アップデート後の&ポストインストールスクリプトを使用してコードを移動できます。しかし、それは非常に悪い考えです。