如果我这样做$ composer require hwi/oauth-bundle
,我会得到:
Using version ^0.6.3 for hwi/oauth-bundle
./composer.json has been updated
Loading composer repositories with package information
Updating dependencies (including require-dev)
Restricting packages listed in "symfony/symfony" to "4.2.*"
Your requirements could not be resolved to an installable set of packages.
Problem 1
- Installation request for hwi/oauth-bundle ^0.6.3 -> satisfiable by hwi/oauth-bundle[0.6.3].
- hwi/oauth-bundle 0.6.3 requires php-http/client-implementation ^1.0 -> satisfiable by php-http/guzzle6-adapter[v2.0.1].
- hwi/oauth-bundle 0.6.3 requires php-http/httplug ^1.0 -> satisfiable by php-http/httplug[v1.0.0, v1.1.0].
- Can only install one of: php-http/httplug[v2.0.0, v1.0.0].
- Can only install one of: php-http/httplug[v2.0.0, v1.1.0].
- php-http/guzzle6-adapter v2.0.1 requires php-http/httplug ^2.0 -> satisfiable by php-http/httplug[v2.0.0].
- Conclusion: remove php-http/httplug v2.0.0
Installation failed, reverting ./composer.json to its original content.
我的PHP版本是:
$ php --version
PHP 7.2.15-0ubuntu0.18.04.2 (cli) (built: Mar 22 2019 17:05:14) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies
with Zend OPcache v7.2.15-0ubuntu0.18.04.2, Copyright (c) 1999-2018, by Zend Technologies
这是我当前的composer.json
:
{
"type": "project",
"license": "proprietary",
"require": {
"php": "^7.1.3",
"ext-ctype": "*",
"ext-iconv": "*",
"sensio/framework-extra-bundle": "^5.1",
"symfony/apache-pack": "^1.0",
"symfony/asset": "4.2.*",
"symfony/console": "4.2.*",
"symfony/dotenv": "4.2.*",
"symfony/expression-language": "4.2.*",
"symfony/flex": "^1.1",
"symfony/form": "4.2.*",
"symfony/framework-bundle": "4.2.*",
"symfony/monolog-bundle": "^3.1",
"symfony/orm-pack": "*",
"symfony/process": "4.2.*",
"symfony/security-bundle": "4.2.*",
"symfony/serializer-pack": "*",
"symfony/swiftmailer-bundle": "^3.1",
"symfony/translation": "4.2.*",
"symfony/twig-bundle": "4.2.*",
"symfony/validator": "4.2.*",
"symfony/web-link": "4.2.*",
"symfony/webpack-encore-bundle": "^1.4",
"symfony/yaml": "4.2.*"
},
"require-dev": {
"symfony/debug-pack": "*",
"symfony/maker-bundle": "^1.0",
"symfony/profiler-pack": "*",
"symfony/test-pack": "*",
"symfony/web-server-bundle": "4.2.*"
},
"config": {
"preferred-install": {
"*": "dist"
},
"sort-packages": true
},
"autoload": {
"psr-4": {
"App\\": "src/"
}
},
"autoload-dev": {
"psr-4": {
"App\\Tests\\": "tests/"
}
},
"replace": {
"paragonie/random_compat": "2.*",
"symfony/polyfill-ctype": "*",
"symfony/polyfill-iconv": "*",
"symfony/polyfill-php71": "*",
"symfony/polyfill-php70": "*",
"symfony/polyfill-php56": "*"
},
"scripts": {
"auto-scripts": {
"cache:clear": "symfony-cmd",
"assets:install %PUBLIC_DIR%": "symfony-cmd"
},
"post-install-cmd": [
"@auto-scripts"
],
"post-update-cmd": [
"@auto-scripts"
]
},
"conflict": {
"symfony/symfony": "*"
},
"extra": {
"symfony": {
"allow-contrib": false,
"require": "4.2.*"
}
}
}
我的symfony版本是:
$ php bin/console --version
Symfony 4.2.4 (env: dev, debug: true)
如何在SF hwi/oauth-bundle
和PHP v4.2.4
中安装v7.2.15
?
答案 0 :(得分:1)
这是一个伪装:hwi oauth bundle and Symfony 4.2 : Impossible to install
Luc添加此选项的答案对我来说很好
"hwi/oauth-bundle": "^0.6.3",
"php-http/guzzle6-adapter": "~1.1.1",
"php-http/httplug-bundle": "~1.13"
事实上,我所做的是在命令行中通过以下命令要求它们:
composer require "hwi/oauth-bundle:^0.6.3" "php-http/guzzle6-adapter:~1.1.1" "php-http/httplug-bundle:~1.13"
然后当被问到Do you want to execute this recipe?
(两次,一次是hwi/oauth-bundle
,另一次是php-http/httplug-bundle
)时,我所做的是告诉n
,并从此处手动遵循食谱: https://github.com/symfony/recipes-contrib/tree/master/hwi/oauth-bundle/0.6
我在https://github.com/symfony/recipes-contrib/blob/master/hwi/oauth-bundle/0.6/config/routes/hwi_oauth_routing.yaml处添加了路由文件(路由的导入),并在https://github.com/symfony/recipes-contrib/blob/master/hwi/oauth-bundle/0.6/config/packages/hwi_oauth.yaml处添加了包文件(配置)
然后,我添加了用于修改bundles.php
的捆绑包,然后最终在配方根目录中使用了manifest.json
和post-install.txt
来帮助我进行良好的配置(包括.env
我必须更改建议,因为我不想使用Facebook,但要使用Google的建议。
与此处https://github.com/symfony/recipes-contrib/tree/master/php-http/httplug-bundle/1.6的HttpPlug食谱相同。刚刚添加了软件包配置文件。