Папка Bower не найдена в папке поставщика в базовом приложении yii2
Я загрузил базовое приложение yii2.А потом толкнул в git.Но затем на другом ПК я установил все зависимости с помощью композитора. Но теперь у меня нет папки bower, поэтому я получаю ошибку:
The file or directory to be published does not exist: C:xampphtdocsjumpbyte-sitevendorbower/jquery/dist'
мой композитор.файл json имеет следующие зависимости:
"require": {
"php": ">=5.4.0",
"yiisoft/yii2": "*",
"yiisoft/yii2-bootstrap": "*",
"yiisoft/yii2-swiftmailer": "*",
"himiklab/yii2-sitemap-module": "*"
},
6 ответов
чтобы управлять зависимостями пакетов bower и npm через Composer, вам необходимо установить (глобально) fxp / composer-asset-plugin :
composer global require "fxp/composer-asset-plugin:~1.1.1"
composer install
Подробнее: http://www.yiiframework.com/doc-2.0/guide-start-installation.html#installing-via-composer
сначала загрузите зависимости по умолчанию
composer global require "fxp/composer-asset-plugin:~1.0.3"
затем просто запустить
composer install
перезагрузите свой сайт.
Гото /поставщика/зависимостей/коде с Yii2/базы/приложения.РНР.
Гото линия 456.
изменить
Yii:: setAlias('@bower', $this->_vendorPath . DIRECTORY_SEPARATOR . 'bower');
до
Yii:: setAlias('@bower', $this->_vendorPath . DIRECTORY_SEPARATOR . "Бауэр". DIRECTORY_SEPARATOR . 'bower-asset');
это может сломать что-то позже, но это было намного быстрее, чем пытаться искоренить проблему композитора. Я тоже пытался, но безрезультатно. Я просто решил дать ему то, о чем он просил.
Если кто-то знает, почему этот обходной путь не хорош, пожалуйста, говорите.
Гото /поставщика/зависимостей/коде с Yii2/базы/приложения.РНР.
public function setVendorPath($path)
{
$this->_vendorPath = Yii::getAlias($path);
Yii::setAlias('@vendor', $this->_vendorPath);
Yii::setAlias('@bower', $this->_vendorPath . DIRECTORY_SEPARATOR . 'bower-asset'); //it was just 'bower'
Yii::setAlias('@npm', $this->_vendorPath . DIRECTORY_SEPARATOR . 'npm');
}
(для свежей установки.) в Windows.
- удалите композитор в windows и переустановите. после этого
composer global require "fxp/composer-asset-plugin:~1.1.1"
composer create-project --prefer-dist yiisoft/yii2-app-advanced yii-application
(для обновления): удалить содержимое каталога:
- поставщик удалить файл
- композитор.замок, чем
composer install
вот и все
в моем случае у меня была старая версия composer-asset-plugin, и она не работала должным образом. Мне помогает только обновление. Итак, обновите последнюю версию composer-asset-plugin:
composer global require "fxp/composer-asset-plugin:^1.2.0"
посмотреть ^1.2.0
. Это важно.
затем выполните следующие команды:
rm -rf vendor/*
rm composer.lock
composer install