パッケージがまだpackagist.orgにアップロードされていない場合は、ローカルコンポーザーリポジトリを定義する必要があります。 Laravels内部でアプリケーションcomposer.json
このようなローカルリポジトリを追加します。
"repositories": [
{
"type": "path",
"url": "/full/or/relative/path/to/development/my-package"
}
],
"require": {
"my-package": "*"
}
あなたがパッケージLaravels内部composer.json
なく内側パッケージsrc
ディレクトリを定義する必要が自身のcomposer.json
。試してみて、この内部パッケージのcomposer.json
のようにそれを定義します。
"require" : {
"twbs/bootstrap": "dev-master",
"laravelcollective/html": "5.3.*"
},
"autoload" : {
"psr-4" : {
"PackageNamespace\\PackageClass\\" : "src/"
}
},
UPDATE
適切なパッケージの開発を行うために、あなたは/vendor/
以外のディレクトリであなたのパッケージファイルを維持する必要があります作曲家ディレクトリ。主な理由は、コンフリクトの問題がある場合や、コンシューマ/vendor
の下のすべてをクリーンアップして設定する場合に、開発者が/vendor
ディレクトリ全体を削除できることです。私は非常に簡単な方法を使用して、私はで私自身のパッケージを保つ:あなたがリポジトリを認識する作曲のためにあなたのパッケージでのgitを初期化する必要があり
<application>/dev/packages/<package-namespace>/<package-name>
。 gitのパッケージを作成するには、あなたのパッケージの場所に移動して、次のコマンドを実行します。
cd <application>/dev/packages/<package-namespace>/<package-name>
git init
git add *
git commit -m "Initial commit"
また、gitのが誰かを認識し、地元を許可できるようにするために、コミット前git config user.name
とgit config user.email
を設定する必要がありますコミット:私の例では
git config user.email "[email protected]"
git config user.name "Your Name"
、名前空間はlytr
で、パッケージ名はtestpkg
です。
<application>/dev/packages/<package-namespace>/<package-name>/composer.json
(<application>/dev/packages/lytr/testpkg
)は次のようになります。私は"minimum-stability": "dev",
が含ま
"repositories": [
{
"type": "path",
"url": "<full-application-path>/dev/packages/lytr/testpkg"
}
],
"require" : {
"lytr/testpkg": "*"
},
"minimum-stability": "dev",
:
{
"name" : "lytr/testpkg",
"description" : "Test package of Lytr",
"keywords" : [
"test",
"package"
],
"license" : "MIT",
"require" : {
"twbs/bootstrap" : "dev-master",
"laravelcollective/html" : "5.3.*"
},
"autoload" : {
"psr-0" : {
"Lytr\\TestPkg\\" : "src"
}
},
"extra" : {
"branch-alias" : {
"dev-master" : "1.0-dev"
}
},
"minimum-stability" : "dev"
}
を次に、あなたのアプリケーション<application>/composer.json
であなたは、このようなローカルgitリポジトリとあなたのパッケージを持っています我々はmaster-dev
バージョンを使用しているからです。その後、唯一のは、パッケージの要件に"twbs/bootstrap" : "dev-master",
を持つcomposer update
コマンドを実行した後、我々は、コンソールウィンドウに次の出力が表示されます:
そして、我々はパッケージcomposer.json
を変更し、"laravelcollective/html" : "5.3.*",
を必要とした後、我々はcomposer update
を行い、我々は作曲が適切laravelcollective/html
パッケージをインストール参照してください。
これは混乱していると思われるかもしれませんが、何とか過労ですが、これは作曲家用のパッケージを開発するための適切な方法です。パッケージをgitリポジトリに置いて、ローカルファイルではなくリポジトリをコンポーザに複製させることもできます。あなたがパッケージの開発を終えて、https://packagist.org/の下でそれをリリースすると、リポジトリとすべてのローカルgitのものがなくても、パッケージを他の通常のパッケージと同じようにしなければなりません。覚えておいてください、あなたはパッケージの開発段階にあり、生産段階にはありません。
ここに「composer update」の出力を表示しますか? –
また、ベンダフォルダの内容は? –