Nano Hash - криптовалюты, майнинг, программирование

композитор не анализирует composer.json

я создал пакет. в комплекте я создаю две таблицы в базе данных. это следует за моим composer.json.

{
    "name": "xxxx/xxx-designer",
    "description": "XXXX",
    "license": "MIT",
    "homepage": "https://github.com/giturl",
    "autoload": {
        "psr-0": {
            "": "src/"
        }
    },
    "authors": [
        {
            "name": "xxxx",
            "email": "[email protected]"
        }
    ],
    "minimum-stability": "dev",
    "require": {
        "php": ">=5.3.0",
    },
    "scripts": {
        "post-install-cmd": [
            "Acme\\Bundle\\DemoBundle\\Composer\\AcmeHandler::InstallTabs"
        ],
        "post-update-cmd": [
            "Acme\\Bundle\\DemoBundle\\Composer\\AcmeHandler::InstallTabs"
        ]
    },
    "extra": {
        "branch-alias": {
            "dev-master": "1.0.x-dev"
        }
    }
}

Теперь проблема в том, что когда я выполняю php composer.phar update, тогда композитор не выполняет post-update-cmd или post-install-cmd, но если добавить следующую строку в основной composer.json

"scripts": {
    "post-install-cmd": [
        "Acme\\Bundle\\DemoBundle\\Composer\\AcmeHandler::InstallTabs"
    ],
    "post-update-cmd": [
        "Acme\\Bundle\\DemoBundle\\Composer\\AcmeHandler::InstallTabs"
    ]
},

затем php composer.phar update выполните эту команду, и мои таблицы будут созданы. Мне интересно, почему композитор не выполняет команды из моего пакета composer.json. пожалуйста, помогите, почему композитор не выполняет скрипт из пакета composer.json


Ответы:


1

Взято из документов

  Note: Only scripts defined in the root package's composer.json are executed.
  If a dependency of the root package specifies its own scripts, Composer does not
  execute those additional scripts.
25.11.2014

2

К сожалению, вы не можете сделать это с помощью скриптов post-instal/update от производителя.

НО

Посмотрите, как это решается в BraincraftedBootstrapBundle:

У них есть отдельная команда для копирования значков

Я показываю, что его можно добавить в composer.json. BraincraftedBootstrapBundle -> Установка Glyphicons

25.11.2014
Новые материалы

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

Как написать эффективное резюме
Предложения по дизайну и макету, чтобы представить себя профессионально Вам не позвонили на собеседование после того, как вы несколько раз подали заявку на работу своей мечты? У вас может..

Частный метод Python: улучшение инкапсуляции и безопасности
Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

Как я автоматизирую тестирование с помощью Jest
Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

Понимание расстояния Вассерштейна: мощная метрика в машинном обучении
В обширной области машинного обучения часто возникает необходимость сравнивать и измерять различия между распределениями вероятностей. Традиционные метрики расстояния, такие как евклидово..

Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..