我将项目分为框架代码和自定义代码。框架代码将进入Laravel软件包。我有一个要向其中添加框架包的现有库,尽管它们当前位于单独的目录中。autoload.psr4
因此,我的composer.json是:
"autoload": {
"psr-4": {
"App\\": "app/",
"MyLibrary\\": "../MyLibrary/",
"MyLibrary\\Framework\\": "../framework/src/"
},
根据Laraval文档,我在composer.json中添加了一个extra
部分:
"extra": {
"laravel": {
"providers": [
"MyLibrary\\Framework\\ServiceProvider"
]
}
}
但是,当我artisan vendor:publish
,MyLibrary \ Framework \ ServiceProvider不在提供程序列表中。标签也没有。除了命名空间文件的非常规位置,我不确定自己在做什么。
您的composer.json文件应类似于
"repositories": [
{
"type": "path",
"url": "packages/your-vendor/basic",
"options": {
"symlink": true
}
}
],
"require": {
"your-vendor/your-package": "dev-master"
},
然后在包的composer.json中
"extra": {
"laravel": {
"providers": [
"MyLibrary\\Framework\\ServiceProvider"
]
}
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句