我刚刚使用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。
如何解决这个问题?
答案 0 :(得分:8)
请参考installation guide。您似乎缺少资产插件:
composer global require "fxp/composer-asset-plugin:~1.2.0"
答案 1 :(得分:4)
确保您已执行此命令:
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 update
个文件,则运行composer.lock
;如果您还没有composer install
个文件,则运行composer.lock
。
答案 2 :(得分:2)
我遇到了同样的问题,
这就是我的解决方法-
前往供应商。
$ cd projectFile / vendor /
用凉亭重命名凉亭资产
$ mv bower-asset / bower
重新启动Mamp / xamp
此问题已解决,http://localhost:8888/运行良好。
答案 3 :(得分:1)
检查项目根目录中的composer.json文件。你应该有一个看起来像这样的部分;
"asset-installer-paths": {
"bower-asset-library": "vendor/bower-assets"
}
这告诉作曲家在哪里找到凉亭文件库。您可能需要在之后运行composer update以更新hte位置。
答案 4 :(得分:0)
您的jquery/dist
似乎位于bower/bower-asset
下,而不是bower
下。
为了解决您的问题,请移动所有bower-asset
内容,包括jquery
子文件夹和其他内容,例如:bootstrap
,yii2-pjax
,puny code
等{{} 1}}文件夹(一级)。所有这些子文件夹与bower
文件夹下的bower-asset
处于同一级别。现在,您可以根据需要删除bower
文件夹。
之前:
bower-asset
现在你有:
vendor/bower/bower-asset/jquery/dist/...
不应该有任何vendor/bower/jquery/dist...
子文件夹。
这将解决您的问题,bower-asset
应用将按预期工作。