簡體   English   中英

Composer沒有在PHP項目中安裝依賴項

[英]Composer not installing dependencies into PHP project

我正在嘗試將Paypal PHP SDK添加到我的項目中:

composer require "paypal/rest-api-sdk-php:*"

但我不斷收到以下錯誤,並且作曲家不會將\\ vendor添加到我的項目中。

user@user:/opt/lampp/htdocs/projects/paypal/ipn$ composer require "paypal/rest-api-sdk-php:*"
./composer.json has been updated
Loading composer repositories with package information
Updating dependencies (including require-dev)
Your requirements could not be resolved to an installable set of packages.

  Problem 1
    - The requested PHP extension ext-curl * is missing from your system. Install or enable PHP's curl extension.
  Problem 2
    - phpunit/phpunit 3.7.9 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    - phpunit/phpunit 3.7.8 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    - phpunit/phpunit 3.7.7 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    - phpunit/phpunit 3.7.6 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    - phpunit/phpunit 3.7.5 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    - phpunit/phpunit 3.7.4 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    - phpunit/phpunit 3.7.38 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    - phpunit/phpunit 3.7.37 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    - phpunit/phpunit 3.7.36 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    - phpunit/phpunit 3.7.35 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    - phpunit/phpunit 3.7.34 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    - phpunit/phpunit 3.7.33 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    - phpunit/phpunit 3.7.32 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    - phpunit/phpunit 3.7.31 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    - phpunit/phpunit 3.7.30 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    - phpunit/phpunit 3.7.3 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    - phpunit/phpunit 3.7.29 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    - phpunit/phpunit 3.7.28 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    - phpunit/phpunit 3.7.27 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    - phpunit/phpunit 3.7.26 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    - phpunit/phpunit 3.7.25 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    - phpunit/phpunit 3.7.24 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    - phpunit/phpunit 3.7.23 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    - phpunit/phpunit 3.7.22 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    - phpunit/phpunit 3.7.21 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    - phpunit/phpunit 3.7.20 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    - phpunit/phpunit 3.7.2 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    - phpunit/phpunit 3.7.19 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    - phpunit/phpunit 3.7.18 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    - phpunit/phpunit 3.7.17 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    - phpunit/phpunit 3.7.16 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    - phpunit/phpunit 3.7.15 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    - phpunit/phpunit 3.7.14 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    - phpunit/phpunit 3.7.13 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    - phpunit/phpunit 3.7.12 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    - phpunit/phpunit 3.7.11 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    - phpunit/phpunit 3.7.10 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    - phpunit/phpunit 3.7.1 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    - phpunit/phpunit 3.7.0 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    - Installation request for phpunit/phpunit 3.7.* -> satisfiable by phpunit/phpunit[3.7.0, 3.7.1, 3.7.10, 3.7.11, 3.7.12, 3.7.13, 3.7.14, 3.7.15, 3.7.16, 3.7.17, 3.7.18, 3.7.19, 3.7.2, 3.7.20, 3.7.21, 3.7.22, 3.7.23, 3.7.24, 3.7.25, 3.7.26, 3.7.27, 3.7.28, 3.7.29, 3.7.3, 3.7.30, 3.7.31, 3.7.32, 3.7.33, 3.7.34, 3.7.35, 3.7.36, 3.7.37, 3.7.38, 3.7.4, 3.7.5, 3.7.6, 3.7.7, 3.7.8, 3.7.9].

  To enable extensions, verify that they are enabled in your .ini files:
    - /etc/php/7.0/cli/php.ini
    - /etc/php/7.0/cli/conf.d/10-mysqlnd.ini
    - /etc/php/7.0/cli/conf.d/10-opcache.ini
    - /etc/php/7.0/cli/conf.d/10-pdo.ini
    - /etc/php/7.0/cli/conf.d/20-calendar.ini
    - /etc/php/7.0/cli/conf.d/20-ctype.ini
    - /etc/php/7.0/cli/conf.d/20-exif.ini
    - /etc/php/7.0/cli/conf.d/20-fileinfo.ini
    - /etc/php/7.0/cli/conf.d/20-ftp.ini
    - /etc/php/7.0/cli/conf.d/20-gettext.ini
    - /etc/php/7.0/cli/conf.d/20-iconv.ini
    - /etc/php/7.0/cli/conf.d/20-json.ini
    - /etc/php/7.0/cli/conf.d/20-mysqli.ini
    - /etc/php/7.0/cli/conf.d/20-pdo_mysql.ini
    - /etc/php/7.0/cli/conf.d/20-phar.ini
    - /etc/php/7.0/cli/conf.d/20-posix.ini
    - /etc/php/7.0/cli/conf.d/20-readline.ini
    - /etc/php/7.0/cli/conf.d/20-shmop.ini
    - /etc/php/7.0/cli/conf.d/20-sockets.ini
    - /etc/php/7.0/cli/conf.d/20-sysvmsg.ini
    - /etc/php/7.0/cli/conf.d/20-sysvsem.ini
    - /etc/php/7.0/cli/conf.d/20-sysvshm.ini
    - /etc/php/7.0/cli/conf.d/20-tokenizer.ini
  You can also run `php --ini` inside terminal to see which files are used by PHP in CLI mode.

Installation failed, reverting ./composer.json to its original content.
user@user:/opt/lampp/htdocs/projects/paypal/ipn$ 

我也嘗試過: composer install會拋出以下錯誤:

Your requirements could not be resolved to an installable set of packages.

  Problem 1
    - The requested PHP extension ext-curl * is missing from your system. Install or enable PHP's curl extension.
  Problem 2
    - phpunit/phpunit 3.7.9 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    - phpunit/phpunit 3.7.8 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    - phpunit/phpunit 3.7.7 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    - phpunit/phpunit 3.7.6 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    - phpunit/phpunit 3.7.5 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    - phpunit/phpunit 3.7.4 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    - phpunit/phpunit 3.7.38 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    - phpunit/phpunit 3.7.37 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    - phpunit/phpunit 3.7.36 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    - phpunit/phpunit 3.7.35 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    - phpunit/phpunit 3.7.34 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    - phpunit/phpunit 3.7.33 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    - phpunit/phpunit 3.7.32 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    - phpunit/phpunit 3.7.31 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    - phpunit/phpunit 3.7.30 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    - phpunit/phpunit 3.7.3 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    - phpunit/phpunit 3.7.29 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    - phpunit/phpunit 3.7.28 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    - phpunit/phpunit 3.7.27 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    - phpunit/phpunit 3.7.26 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    - phpunit/phpunit 3.7.25 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    - phpunit/phpunit 3.7.24 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    - phpunit/phpunit 3.7.23 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    - phpunit/phpunit 3.7.22 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    - phpunit/phpunit 3.7.21 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    - phpunit/phpunit 3.7.20 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    - phpunit/phpunit 3.7.2 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    - phpunit/phpunit 3.7.19 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    - phpunit/phpunit 3.7.18 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    - phpunit/phpunit 3.7.17 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    - phpunit/phpunit 3.7.16 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    - phpunit/phpunit 3.7.15 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    - phpunit/phpunit 3.7.14 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    - phpunit/phpunit 3.7.13 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    - phpunit/phpunit 3.7.12 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    - phpunit/phpunit 3.7.11 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    - phpunit/phpunit 3.7.10 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    - phpunit/phpunit 3.7.1 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    - phpunit/phpunit 3.7.0 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    - Installation request for phpunit/phpunit 3.7.* -> satisfiable by phpunit/phpunit[3.7.0, 3.7.1, 3.7.10, 3.7.11, 3.7.12, 3.7.13, 3.7.14, 3.7.15, 3.7.16, 3.7.17, 3.7.18, 3.7.19, 3.7.2, 3.7.20, 3.7.21, 3.7.22, 3.7.23, 3.7.24, 3.7.25, 3.7.26, 3.7.27, 3.7.28, 3.7.29, 3.7.3, 3.7.30, 3.7.31, 3.7.32, 3.7.33, 3.7.34, 3.7.35, 3.7.36, 3.7.37, 3.7.38, 3.7.4, 3.7.5, 3.7.6, 3.7.7, 3.7.8, 3.7.9].

  To enable extensions, verify that they are enabled in your .ini files:
    - /etc/php/7.0/cli/php.ini
    - /etc/php/7.0/cli/conf.d/10-mysqlnd.ini
    - /etc/php/7.0/cli/conf.d/10-opcache.ini
    - /etc/php/7.0/cli/conf.d/10-pdo.ini
    - /etc/php/7.0/cli/conf.d/20-calendar.ini
    - /etc/php/7.0/cli/conf.d/20-ctype.ini
    - /etc/php/7.0/cli/conf.d/20-exif.ini
    - /etc/php/7.0/cli/conf.d/20-fileinfo.ini
    - /etc/php/7.0/cli/conf.d/20-ftp.ini
    - /etc/php/7.0/cli/conf.d/20-gettext.ini
    - /etc/php/7.0/cli/conf.d/20-iconv.ini
    - /etc/php/7.0/cli/conf.d/20-json.ini
    - /etc/php/7.0/cli/conf.d/20-mysqli.ini
    - /etc/php/7.0/cli/conf.d/20-pdo_mysql.ini
    - /etc/php/7.0/cli/conf.d/20-phar.ini
    - /etc/php/7.0/cli/conf.d/20-posix.ini
    - /etc/php/7.0/cli/conf.d/20-readline.ini
    - /etc/php/7.0/cli/conf.d/20-shmop.ini
    - /etc/php/7.0/cli/conf.d/20-sockets.ini
    - /etc/php/7.0/cli/conf.d/20-sysvmsg.ini
    - /etc/php/7.0/cli/conf.d/20-sysvsem.ini
    - /etc/php/7.0/cli/conf.d/20-sysvshm.ini
    - /etc/php/7.0/cli/conf.d/20-tokenizer.ini
  You can also run `php --ini` inside terminal to see which files are used by PHP in CLI mode.
user@user:/opt/lampp/htdocs/projects/paypal/ipn$ 

我能做錯什么?

謝謝大家。

這是我的應用程序的composer.json:

{
    "require" : {
        "paypal/rest-api-sdk-php" : "*"
    }
}

paypal/rest-api-sdk-phpcomposer.json中指示的平台要求無法實現,這就是composer拒絕安裝包的原因:

Problem 1
    - The requested PHP extension ext-curl * is missing from your system. Install or enable PHP's curl extension.

需要一個包含--ignore-platform-reqs的包

如果您只關心需要包裹,您可以運行

$ composer require paypal/rest-api-sdk-php --ignore-platform-reqs

有關參考,請參閱https://getcomposer.org/doc/03-cli.md#require

--ignore-platform-reqs :忽略phphhvmhhvm lib-*ext-*要求並強制安裝,即使本地計算機不滿足這些要求。 另請參見platform config選項。

使用--ignore-platform-reqs安裝軟件包

假設包裹

  • 已經被添加到composer.json
  • composer.lockcomposer.json的更改保持composer.json

你可以跑

$ composer install --ignore-platform-reqs

有關參考,請參閱https://getcomposer.org/doc/03-cli.md#install

--ignore-platform-reqs :忽略phphhvmhhvm lib-*ext-*要求並強制安裝,即使本地計算機不滿足這些要求。 另請參見platform config選項。

要查明composer.lock是否與composer.lock中的更改保持composer.json ,請運行

$ composer validate

注意 :您可能仍然無法使用該軟件包,因為軟件包依賴於要安裝的ext/curl 要確保您可以在計算機上安裝和使用該程序包,您應該在該計算機上安裝ext/curl

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM