Yii2: использовать плагин fxp assets или asset-packagist? - PullRequest
0 голосов
/ 06 января 2020

Похоже, у yii2 есть нерешенный конфликт между использованием метода asset-packagist.org или более старого плагина fxp assets. Сейчас я работаю с проектом, предназначенным для использования актива-упаковщика. Все настройки отображаются в порядке, но Yii2, кажется, игнорирует все это и настаивает на использовании директории bower, которая не существует. Используя метод asset-packagist, этот каталог называется bower-asset.

Настройки: Для этой работы мы используем (в common / config / base. php):

'aliases' => [
'@bower' => '@vendor/bower-asset',
'@npm' => '@vendor/npm-asset',
 ],

... и в composer. json мы устанавливаем:

 "repositories": [
{
    "type": "composer",
    "url": "https://asset-packagist.org"
}
],

Это не помогает, однако, все еще получая ошибку:

 The file or directory to be published does not exist: 
 C:\....common\config/../../vendor/bower/semantic/dist

Также пробовал чтобы отключить fxp с помощью (в composer. json):

 "config": {
"fxp-asset": {
        "enabled": false
    }
  },

Также пробовал команду:

 composer global remove fxp/composer-asset-plugin  --no-plugins

То же самое.

Примечание: Проект был разработан в Linux, я сейчас пытаюсь открыть его в Windows 10 и XAMPP на localhost. Не стесняйтесь сказать мне, если Windows -высоких.

1 Ответ

0 голосов
/ 12 января 2020

Чтобы заставить это работать, я должен был выбрать плагин fxp и разрешить go пути asset-packagist (он просто не работает, учитывая мои знания на данный момент), вот так:

  • Удалена ссылка на asset-packagist.org из раздела репозиториев в composer. json (в моем случае я удалил весь раздел репозиториев .:
   "repositories": [
    {
    "type": "composer",
    "url": "https://asset-packagist.org"
    }
    ],
  • Установите последний composer fxp-плагин, в настоящее время 1.4.6:

composer global require "fxp / composer -asset -plugin: ~ 1.4.6 "

  • Удалены псевдонимы @bower -> bower-asset (и для npm) в общем / config / base. php.
  • Затем теперь он находит правильный путь, если вы переименуете папку bower-asset в vendor в "bower". Но вы никогда не должны ничего менять в папке vendor, вместо этого добавьте этот раздел fxp-asset в "config "в composer. json:
 "config": {
            "process-timeout": 1800,
            "fxp-asset":{
                "installer-paths": {
                    "npm-asset-library": "vendor/npm",
                    "bower-asset-library": "vendor/bower"
            }
        }
    }
  • Затем удалите папку поставщика, удалите файл Composer .lock и запустите composer install .
...