composer 加载公司内网的私有包,私有包为什么不自动加载packagist的公共包?

D:workwebsvnmvcc>composer update
Loading composer repositories with package information
Updating dependencies (including require-dev)
Package operations: 1 install, 0 updates, 0 removals

  • Installing evolvement/mvcc (1.0.1) Loading from cache
    Writing lock file

Generating autoload files

成功加载后,为什么私有包里的“composer.json”不自动加载?

这个是加载私有包

私有包加载公共包


【12.31补充】
用下载zip的方式加载包是否可行,官方的例子仅仅只是加载smarty包,smarty包里面没有composer.json文件

{
  "repositories": {
    "0": {
      "type": "package",
      "package": {
        "name": "evolvement/mvcc",
        "version": "1.0.0",
        "dist": {
          "url": "http://127.0.0.1:8082/mvcc/mvcc.zip",
          "type": "zip"
        }
      }
    },
    "packagist": {
      "type": "composer",
      "url": "https://packagist.phpcomposer.com"
    }
  },
  "require": {
    "evolvement/mvcc": "1.0.0"
  },
  "config": {
    "secure-http": false
  }
}
阅读 4.7k
2 个回答

要不尝试 composer require 是否解决,如果没解决,考虑是是覆盖了repositories中对packagist的配置,比如下文,
这个config.json 文件在 %userprofile%\AppData\Roaming\Composer

{
    "config": {},
    "repositories": {
        "0" : {
            "type": "package",
            "package: {
            }
        },
        "packagist": {
            "type": "composer",
            "url": "https://packagist.phpcomposer.com"
        }, //改变了packagist的url
        {"packagist": false} //关闭了packagist
    }
}

如果访问不到packagist,并且在你定义的的repositories里面找不到monolog,也自然不会下载了,
除非:早就已经下载了,在vendor目录下看下。