Yii2 全新安装:vendor/bower/jquery/dist 路径错误
Posted
技术标签:
【中文标题】Yii2 全新安装:vendor/bower/jquery/dist 路径错误【英文标题】:Yii2 fresh install: vendor/bower/jquery/dist path is wrong 【发布时间】:2016-03-27 22:28:29 【问题描述】:我刚刚使用 composer 安装了 yii2(高级)。我已经设置了nginx等。
但它不起作用:
Invalid Parameter – yii\base\InvalidParamException
The file or directory to be published does not exist: /srv/www/site/vendor/bower/jquery/dist
在“vendor/bower”文件夹中,只有一个子文件夹“bower-assets”,其中包含“jquery”等。但供应商/凉亭中没有 jquery。
如何解决这个问题?
【问题讨论】:
【参考方案1】:请参考installation guide。您似乎缺少资产插件:
composer global require "fxp/composer-asset-plugin:~1.2.0"
【讨论】:
请不要对多个问题发布相同的答案。发布一个好的答案,然后投票/标记以关闭其他问题作为重复问题。如果问题不是重复的,调整您对该问题的回答。 从我的测试看来,这个包确实需要global
。我试过把它只包含在我的 yii 项目中,但没有运气。【参考方案2】:
确保您已执行此命令:
composer global require "fxp/composer-asset-plugin:~1.2.0"
另外,请检查您的 composer.json 是否有以下内容:
已弃用,但 Yii2 的默认选项:
"extra":
"asset-installer-paths":
"npm-asset-library": "vendor/npm",
"bower-asset-library": "vendor/bower"
,
新选项
"config":
"fxp-asset":
"installer-paths":
"npm-asset-library": "vendor/npm",
"bower-asset-library": "vendor/bower"
,
,
如果您已有 composer.lock
文件,则运行 composer update
;如果您还没有 composer.lock
文件,则运行 composer install
。
【讨论】:
【参考方案3】:检查项目根目录中的 composer.json 文件。你应该有一个看起来像这样的部分;
"asset-installer-paths":
"bower-asset-library": "vendor/bower-assets"
这告诉作曲家在哪里找到 bower 文件库。您可能需要在之后运行 composer update 以更新 hte 位置。
【讨论】:
在我编辑掉最后一个 s 之后,这个解决方案对我有用。应该是"bower-asset-library": "vendor/bower-asset"
@contemplator 只要实际存在具有该名称的文件夹,资产文件夹的名称实际上并不重要。在您的本地计算机上,该文件夹是 bower-asset。在我这里是凉亭资产。名称无关紧要,只要composer文件中的条目指向正确的地方【参考方案4】:
我遇到了同样的问题, 这就是我修复它的方法-
去供应商。
$ cd projectFile/vendor/
用 bower 重命名 bower-asset
$ mv bower-asset/ bower
重启 mamp/xamp
这解决了问题,http://localhost:8888/ 运行良好。
【讨论】:
错误的做法。当您执行“作曲家更新”时,它将再次更新【参考方案5】:您的 jquery/dist
似乎在 bower/bower-asset
下,而不是在 bower
下。
为了解决您的问题,请移动所有bower-asset
内容,包括jquery
子文件夹和其他如:bootstrap
、yii2-pjax
、puny code
等到bower
文件夹(上一级)。所有这些子文件夹将与bower-asset
位于bower
文件夹下的同一级别。现在您可以根据需要删除bower-asset
文件夹。
之前:
vendor/bower/bower-asset/jquery/dist/...
现在你有:
vendor/bower/jquery/dist...
不应有任何bower-asset
子文件夹。
这将解决您的问题,yii2
应用程序将正常运行。
【讨论】:
这完全是错误的方式,对不起。您特此将您的资产从更新中分离出来。将再次创建相同的文件夹并进行更新......但遗憾的是没有使用;)! 错误的做法。当您执行“作曲家更新”时,它将再次更新以上是关于Yii2 全新安装:vendor/bower/jquery/dist 路径错误的主要内容,如果未能解决你的问题,请参考以下文章