I have hosted my custom module on bitbucket, and using satis proxy between comopser and bitbucket.
The problem is, when i use the command composer require vendor/module, it downloads the module at two different places, one under the vendors\ directory and another under the app\code directory, My composer.json file for the module is like this

  "name": "vendor/module",
  "description": "A Magento 2 module that creates a new page",
  "type": "magento2-module",
  "version": "1.0.1",
  "license": [
  "require": {
    "php": "~5.5.0|~5.6.0|~7.0.0"
  "autoload": {
    "files": [ "registration.php" ],
    "psr-4": {
      "Vendor\\Module\\": ""

You can remove the extra.map from the composer file. Since the 2.0.0-RC version it is no longer needed as modules can now also be loaded from the vendor/ directory and don't need to be copied to the app/code directory. The registration.php file is there to register where the extension is located.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.