2017-01-12 6 views
0

Я создал собственный пакет композитора на packagist.com, но когда я использую команду , вам нужна команда для ее получения. Мой пакет находится под папкой поставщика, которая находится на корне.Composer private package issue

Но я хочу, чтобы это было в папке приложения/кода. Есть ли какой-либо параметр для composer.json, где я могу установить приложение/код, так что он будет работать под приложением/кодом /.

ответ

0

Да, есть. Согласно составу documentation, если ваш проект использует спецификацию PSR-4 для загрузки классов, то добавление фрагмента ниже в файл composer.json будет работать.

NB: Вам необходимо будет изменить ProjectNameSpace в базовое пространство имен для вашего проекта.

... 
    "autoload": { 
    "psr-4": { 
     "ProjectNameSpace\\": "app/code" 
    } 
    }, 
... 
+0

Я пробовал то же самое, но он по-прежнему размещает пакеты в каталоге поставщиков. –

0

Теоретически. Вы не можете композитор всегда размещать код в каталоге поставщика. Код является внешним и поэтому может быть обновлен только композитором. Он не должен быть в приложении/коде, поскольку только код, который вы изменяете для проекта, должен быть в приложении/коде.

Если вы хотите создать проект Magento, у вас должны быть файлы в инструменте управления версиями.

  • приложение/*
  • composer.json
  • composer.lock
  • .htaccess
  • index.php

Остальные файлы будут обработаны композитором.

Но если вам действительно нужно это сделать, но я не вижу повода для этого, вы можете использовать пост-обновление пост-инсталляционный скрипт для перемещения кода. Но это очень плохая идея.