如何在Laravel中使用本地作曲家软件包

问题描述

我正在尝试在Laravel(8.0)中使用本地作曲家软件包-基于 How to develop a simple Laravel package locally

我正在使用simonschaufi/laravel-dkim

  1. 软件包的本地副本位于目录:/packages/simonschaufi/laravel-dkim
  2. 我的作曲家文件
"repositories": {
     "laravel-dkim": {
         "type": "path","url": "/packages/simonschaufi/laravel-dkim","options": {
             "symlink": true
         }
     }
 },"require": {      
     "simonschaufi/laravel-dkim": "@dev"
 },"config": {
     "preferred-install": "source","sort-packages": true,"optimize-autoloader": true
 },"minimum-stability": "dev","prefer-stable": true

不幸的是,在composer update之后仍获得原始软件包(而不是本地软件包)

您知道错在哪里吗????

解决方法

尝试将存储库密钥更改为:

  "repositories": [
        {
            "type": "path","url": "/packages/simonschaufi/laravel-dkim"
        }
    ],

可能存在其他潜在问题:

"require": {      
        "simonschaufi/laravel-dkim": "dev-master"
    },

需求似乎还很小?您有重复的钥匙吗?还要仔细检查软件包的本地路径。

,

基于Simon Schaufelberger的帮助:

问题是因为我使用了旧版本的Composer(1.8.4)。 在composer更新(至1.10.13)之后,正确安装了本地软件包:)

在作曲家文件中正确的代码是:

"repositories": [
        {
            "type": "path","url": "./packages/*"
        }
    ],

文件应位于目录/packages/laravel-dkim