Cakephp Composer在错误的目录中安装jQuery组件
我正在尝试通过CakePHP应用程序中的Composer安装jQuery组件,Composer.json:Cakephp Composer在错误的目录中安装jQuery组件,cakephp,composer-php,Cakephp,Composer Php,我正在尝试通过CakePHP应用程序中的Composer安装jQuery组件,Composer.json: { "name": "affiliate", "require": { "cakephp/cakephp": "2.5.*", "cakephp/debug_kit": "2.2.*@dev", "cakedc/utils": "dev-develop", "cakedc/search": "dev-devel
{
"name": "affiliate",
"require": {
"cakephp/cakephp": "2.5.*",
"cakephp/debug_kit": "2.2.*@dev",
"cakedc/utils": "dev-develop",
"cakedc/search": "dev-develop",
"friendsofcake/crud": "3.*",
"components/jquery": "2.*"
},
"config": {
"vendor-dir": "Vendor/"
}
}
它在
app/Vendor/components/jquery
中安装一些文件,但也在app的root-app/components/jquery
中创建和安装一些文件。我想将所有组件都放在供应商一中,如何解决这个问题?组件/jquery包使用,它可以从您的composer.json
中读取指定的component dir
设置,您希望将下载的组件放在此处-例如,在web/assets
文件夹中:
{
"require": {
"components/jquery": "*"
},
"config": {
"component-dir": "web/assets"
}
}
要了解更多信息,请查看文档
然后,您可以将web/assets中下载的组件文件添加到.gitignore中,这样您就不会添加由包管理器加载的文件
如果您不喜欢这种方法,那么另一种选择是您可以将自己的包存储库添加到composer.json
中,如下所示:
{
"repositories": [
{
"type": "package",
"package": {
"name": "jquery/jquery",
"version": "2.1.1",
"dist": {
"url": "http://code.jquery.com/jquery-2.1.1.js",
"type": "file"
}
}
}
],
"require": {
"jquery/jquery": "2.1.1"
}
}
使用这种方法,composer将JS文件下载到
vendor/jquery/jquery/jquery-2.1.1.JS
——然后您可以从您的www根目录添加一个符号链接到该文件。完美,谢谢!我选择了第一个解决方案,因此component/jquery
实际上是ivaynberg/select2
的一个依赖项,因此只需更改component dir
就更容易了。希望我们能够将这些内容传输到/dev/null。使用assetic,我更喜欢从实际的供应商文件夹中提取特定的零件。不过谢谢你,现在我至少可以把它从根上拔出来了。