Попробуйте установить собственное расширение через композитор в TYPO3 - PullRequest
0 голосов
/ 24 ноября 2018

Мои первые шаги с TYPO3 CMS и composer ... но я не могу установить свой собственный дистрибутив.Попробуйте:

composer require stsa/hellotypo3

У меня есть эта ошибка:

[InvalidArgumentException]                                                                                           
 Could not find a version of package stsa/hellotypo3 matching your minimum-stability (stable). Require it with an explicit version constraint allowing its desired stability.

Я установил TYPO3 9.5.1 через композитор и (для тестирования) установил стороннее расширение, например mask с composer require mask/mask.Он отлично работает.

Вот мои composer.json моего расширения распространения, которое я загрузил в packgist.JSON-файл действителен, но там должен быть sth.неправильно ..

{
    "name": "stsa/hellotypo3",
    "type": "typo3-cms-extension",
    "description": "FLUID Templates & TypoScript",
    "homepage": "https://www.hello.de/",
    "keywords": [
        "TYPO3",
        "CMS",
        "extension"
    ],
    "authors": [
        {
            "name": "Stsa",
            "email": "contact@hello.de",
            "role": "Developer",
            "homepage": "https://www.hello.de/"
        }
    ],
    "license": [
        "GPL-2.0-or-later"
    ],
    "require": {
        "typo3/cms-core": "^9.5"
    },
    "autoload": {
        "psr-4": {
            "Stsa\\Hellotypo3\\": "Classes/"
        }
    },
    "replace": {
        "hellotypo3": "self.version",
        "typo3-ter/hellotypo3": "self.version"
    }
}

Ни за что .. это не работает с этим.Я также пытаюсь установить "minimum-stability": "stable".Но, честно говоря, я понятия не имею, что я могу сделать ..?!Кто-нибудь может мне помочь?Спасибо.

РЕДАКТИРОВАТЬ 1: Сегодня я обновил свое собственное расширение в packgist.Теперь он должен быть доступен с этим поставщиком / именем.

РЕДАКТИРОВАТЬ 2: Теперь я сделал тестовое расширение через sitepackagebuilder , загрузку в git, сборку в packgist.Попробуйте установить через composer require hellotypo3de/hellotest .. все то же самое Предупреждение об ошибке: Could not find a version of package hellotypo3de/hellotest matching your minimum-stability (stable). Require it with an explicit version constraint allowing its desired stability. ..?!Где моя ошибка?

Ответы [ 3 ]

0 голосов
/ 24 ноября 2018

Я предполагаю, что вы хотите использовать ваше расширение только на одной установке в качестве локального расширения.Итак, вот путь:

  1. Создайте каталог, например packages в корневом каталоге вашего проекта.

  2. Переместите ваше расширение в этокаталог и назовите папку stsa-hellotypo3.Часть перед чертой - это ваше пространство имен, часть за именем пакета.

  3. Добавьте к вашему composer.json вашего внутреннего номера следующую запись:

    "extra": {
        "typo3/cms": {
            "extension-key": "stsa_hellotypo3"
        }
    }
    

    Теперь TYPO3 будет использовать stsa_hellotypo3 в качестве ключа расширения.

  4. Измените в своем файле composer.json в корневом каталоге проекта TYPO3 запись repositories:

    "repositories": [
        {
            "type": "path",
            "url": "packages/*"
        },
        {
            "type": "composer",
            "url": "https://composer.typo3.org/"
        }
    ],
    

    composer теперь будет искать в папке packages пакеты для установки.

  5. Теперь вы можете добавить свое расширение в проект:

    composer require stsa/hellotypo3:@dev
    

    Расширение является символической ссылкойРедактируется как stsa_hellotypo3 в каталоге typo3conf / ext /.С @dev устанавливается версия для разработки (которая у вас есть).Вы также можете добавить запись о версии в файл composer.json вашего расширения, затем вы можете опустить @dev.

Если вы делаете это таким образом, вам не нужно добавлять своиинформация автозагрузки расширения в корневой файл composer.json.

0 голосов
/ 30 ноября 2018

Возможно установить расширение локального дистрибутива вручную.Вы должны вставить свое расширение в «require-section» и добавить новый тип пакета в «repositories-section» в корне вашего репозитория composer.json.Смотрите мой пример:

{
    "repositories": [
        {
            "type": "composer",
            "url": "https://composer.typo3.org/"
        },
        {
            "type":"package",
            "package": {
              "name": "stsa/hellotypo3",
              "version":"master",
              "source": {
                  "url": "https://github.com/name/hellotypo3-distribution.git",
                  "type": "git",
                  "reference":"dev-master"
                }
            }
        }
    ],
    "name": "typo3/cms-base-distribution",
    "description" : "TYPO3 CMS Base Distribution",
    "license": "GPL-2.0-or-later",
    "config": {
        "platform": {
            "php": "7.2"
        }
    },
    "require": {
        "helhum/typo3-console": "^5.5.5",
        "typo3/minimal": "^9.5",
        "typo3/cms-about": "^9.5",
        "typo3/cms-adminpanel": "^9.5",
        "typo3/cms-belog": "^9.5",
        "typo3/cms-beuser": "^9.5",
        "typo3/cms-felogin": "^9.5",
        "typo3/cms-fluid-styled-content": "^9.5",
        "typo3/cms-form": "^9.5",
        "typo3/cms-impexp": "^9.5",
        "typo3/cms-info": "^9.5",
        "typo3/cms-redirects": "^9.5",
        "typo3/cms-reports": "^9.5",
        "typo3/cms-rte-ckeditor": "^9.5",
        "typo3/cms-setup": "^9.5",
        "typo3/cms-seo": "^9.5",
        "typo3/cms-sys-note": "^9.5",
        "typo3/cms-t3editor": "^9.5",
        "typo3/cms-tstemplate": "^9.5",
        "typo3/cms-viewpage": "^9.5",
        "stsa/hellotypo3": "dev-master"
    },
    "scripts":{
        "typo3-cms-scripts": [
            "typo3cms install:fixfolderstructure",
            "typo3cms install:generatepackagestates"
        ],
        "post-autoload-dump": [
            "@typo3-cms-scripts"
        ]
    },
    "extra": {
        "typo3/cms": {
            "cms-package-dir": "{$vendor-dir}/typo3/cms",
            "web-dir": "public"
        }
    }
}

dev-master здесь важно!

composer.json из вашего расширения выглядит так:

{
    "name": "stsa/hellotypo3",
    "type": "typo3-cms-extension",
    "description": "FLUID Templates & TypoScript",
    "homepage": "https://www.hellotypo3.de/",
    "keywords": [
        "TYPO3",
        "CMS",
        "extension"
    ],
    "authors": [
        {
            "name": "StSa",
            "email": "hello@hellotypo3.de",
            "role": "Developer",
            "homepage": "https://www.hellotypo3.de/"
        }
    ],
    "license": [
        "GPL-2.0-or-later"
    ],
    "require": {
        "typo3/cms-core": "^9.5"
    },
    "autoload": {
        "psr-4": {
            "Stsa\\Hellotypo3\\": "Classes/"
        }
    },
    "replace": {
        "hellotypo3": "self.version",
        "typo3-ter/hellotypo3": "self.version"
    },
    "extra": {
        "typo3/cms": {
            "extension-key": "hellotypo3"
        }
    }
}

Или вы можете установитьваше расширение от packgist, но не забудьте:

composer require stsa/hellotypo3:master-dev@dev

или

composer req stsa/hellotypo3:@dev
0 голосов
/ 24 ноября 2018
"require": {
        "typo3/cms-core:^9.5"
    },

Это работает?Если не зря, но надеюсь, это поможет

...