引入本地包時是需要在repositories依賴里填寫完整的包路徑(包composer.json的相對目錄),而不是只填寫包目錄所在位置,
所以我把主項目的composer.json改成這樣就好了:
"repositories": {
"upacpsdk": {
"type": "path",
"url": "local3rdpackages/upacp" //<---這里不能只寫local3rdpackages,而要寫本地包完整路徑
},
"packagist": {
"type": "composer",
"url": "https://packagist.phpcomposer.com"
}
}
最后執(zhí)行下require就可以了:
composer require upacp/sdk:dev-master -vvv
=======下面是原問題描述=========
我要引入銀聯(lián)的sdk,于是寫了下面這種目錄結(jié)構(gòu):
這里local3rdpackages目錄是與主項目的composer.json在同一個目錄級別下,我給三方庫添加的composer.json文件代碼如下(主要是為了inlcude acp_service.php文件)
{
"name": "upacp/sdk",
"autoload": {
"files": [
"acp_service.php"
],
"extra": {
"branch-alias": {
"dev-master": "1.0-dev"
}
}
}
}
主項目的composer.json文件里導入local3rdpackages目錄下包的代碼如下
"repositories": {
"0": {
"type": "path",
"url": "local3rdpackages/*/*",
"options": {
"symlink": false
}
},
"packagist": {
"type": "composer",
"url": "https://packagist.phpcomposer.com"
}
}
但是還是沒有效果啊,我應該怎么做?
[已解決]composer不能引入本地的三方代碼?
慕運維8079593
2019-03-10 05:42:11