php - 无法让 Composer "path"存储库工作

标签 php json repository package composer-php

我有一个这样的目录结构:

composer.json < Main
  packages/
    balunker/
      testpackage/
        composer.json < Package
        src/
          TestPackage.php

主要的composer.json如下所示:

{
    "name": "vagrant/composer-test",
    "repositories": [
        {
             "type": "path",
            "url": "packages/*/*"
        }
    ],
    "require": {
        "balunker/testpackage": "*"
    }
}

虽然包 composer.json 看起来像这样:

{
  "name": "balunker/testpackage",
  "autoload": {
    "psr-4": {
      "Balunker\\": "src/"
    }
  }
}

composer update 上,我简单地收到一条消息,指出无法解析包。没有创建符号链接(symbolic link),也没有安装包。我确实花了半天时间来解决这个问题,但没有任何成功。

我还上传了 composer update -vvv 详细输出:http://pastebin.com/mMRHsACk .

我的 Composer 版本是最新的(截至 2016 年 4 月 20 日下午 2:39 UTC),所有这些都在 Vagrant (Debian) 中运行。

非常感谢您提供的任何建议。我真的不知道还能做什么。

最佳答案

我也在 Github 上发布了这个问题,结果证明文档有点误导。它说:

{
    "repositories": [
        {
            "type": "path",
            "url": "../../packages/my-package"
        }
    ],
    "require": {
        "my/package": "*"
    }
}

但是,如果您只有一个没有发布的本地 repo,您​​必须使用:

{
    "repositories": [
        {
            "type": "path",
            "url": "../../packages/my-package"
        }
    ],
    "require": {
        "my/package": "dev-master"
    }
}

版本 dev-master 是这里的关键(假设您在 master 分支上工作)。这有点令人恼火,但感谢一些乐于助人的 Composer 贡献者,我终于可以掌握这一点。

我希望这对将来的人有所帮助。

祝你好运!

关于php - 无法让 Composer "path"存储库工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36745691/

相关文章:

javascript - 使用选择框对网格 Extjs 进行分组

php - 通过发布的数组过滤数据?

javascript - 某些字段 id 的 Ajax POST 数据

php - 如何根据php中标题的长度减小字体大小?

javascript - 在 javascript 中,stringify 数组不返回预期的行为

json - 如何将 JSONDecoder 与多种可能的数据结构一起使用

json - JSON 中的多对多关系

orm - 奇怪的错误 : [Semantical Error] line 0, col 75 靠近 'submit' :错误: 'submit' 未定义

ubuntu - 在 ubuntu 机器中恢复 Elastic Search 快照时出现 RepositoryException

java - 什么是 jung2(java 图形框架)的 maven 存储库 url?