【问题标题】:Your requirements could not be resolved: failed to open stream: Permission denied无法解决您的要求:无法打开流:权限被拒绝
【发布时间】:2017-07-10 20:50:59
【问题描述】:

我需要在我的项目中安装 DomPDf。所以,我将 "barryvdh/laravel-dompdf": "v0.7.0", 添加到 composer require 块。当我更新作曲家显示以下错误时。我的错误是什么......请告诉我......

终端错误

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

  Problem 1
    - dompdf/dompdf v0.7.0-beta3 requires phenx/php-font-lib 0.4.* -> no matching package found.
    - dompdf/dompdf v0.7.0-beta2 requires phenx/php-font-lib 0.4.* -> no matching package found.
    - dompdf/dompdf v0.7.0-beta requires phenx/php-font-lib 0.3.* -> no matching package found.
    - dompdf/dompdf v0.7.0 requires phenx/php-font-lib 0.4.* -> no matching package found.
    - dompdf/dompdf 0.7.x-dev requires phenx/php-font-lib 0.5.* -> no matching package found.
    - barryvdh/laravel-dompdf v0.7.0 requires dompdf/dompdf ^0.7 -> satisfiable by dompdf/dompdf[0.7.x-dev, v0.7.0, v0.7.0-beta, v0.7.0-beta2, v0.7.0-beta3].
    - Installation request for barryvdh/laravel-dompdf v0.7.0 -> satisfiable by barryvdh/laravel-dompdf[v0.7.0].

Potential causes:
 - A typo in the package name
 - The package is not available in a stable-enough version according to your minimum-stability setting
   see <https://getcomposer.org/doc/04-schema.md#minimum-stability> for more details.

我的作曲家代码

{
    "name": "laravel/laravel",
    "description": "The Laravel Framework.",
    "keywords": ["framework", "laravel"],
    "minimum-stability" : "dev",
    "prefer-stable": true,
    "license": "MIT",
    "type": "project",
    "require": {
        "php": ">=5.6.4",
        "barryvdh/laravel-debugbar": "^2.3",
"barryvdh/laravel-dompdf": "v0.7.0",
        "laravel/framework": "5.4.*",
        "laravel/tinker": "~1.0",
        "uxweb/sweet-alert": "^1.4" 
    },
    "require-dev": {
        "fzaninotto/faker": "~1.4",
        "mockery/mockery": "0.9.*",
        "phpunit/phpunit": "~5.0"
    },
    "autoload": {
        "classmap": [
            "database"
        ],
        "psr-4": {
            "App\\": "app/"
        }
    }

我也试过了:

composer require barryvdh/laravel-dompdf

但它显示以下错误:

错误:使用版本 ^0.8.0 用于 barryvdh/laravel-dompdf ./composer.json 已更新正在加载包含包信息的作曲家存储库

更新依赖(包括require-dev)

file_put_contents(/home/w3cert/.composer/cache/repo/https---‌​packagist.org/p-prov‌​ider-2017-01.json):无法打开流:权限被拒绝

packagist.org 无法完全加载,包信息是从本地缓存加载的,可能已过期

您的需求无法解析为一组可安装的软件包。

【问题讨论】:

    标签: composer-php


    【解决方案1】:

    由于您在运行 composer require barryvdh/laravel-dompdf 时遇到 Permission denied 错误,因此应该使用以下命令来修复它们:

    chown -R $USER ~/.composer
    

    或:

    sudo chown -R $USER ~/.composer
    

    然后清除 Composer 缓存:

    composer clear
    

    之后尽量避免使用sudo 运行composer 命令,以免破坏文件权限。

    如果仍然有任何问题,为了排除故障,请运行以下 shell 命令:

    composer diagnose
    

    【讨论】:

    • 你能告诉我这个推荐有什么作用吗 sudo chown -R $USER ~/.composer
    【解决方案2】:

    你为什么不尝试从命令行安装它

    composer require barryvdh/laravel-dompdf
    

    请在安装前从 composer.json 中删除此行。

    "barryvdh/laravel-dompdf": "v0.7.0"
    

    无论如何是laravel-dompdf:(v0.8.0)的当前版本

    【讨论】:

    • 我已经试过了。但显示以下错误:使用版本 ^0.8.0 for barryvdh/laravel-dompdf ./composer.json 已更新使用包信息加载作曲家存储库更新依赖项(包括 require-dev)file_put_contents(/home/w3cert/.composer/cache /repo/https---packagist.org/p-provider-2017-01.json):打开流失败:权限被拒绝packagist.org无法完全加载,包信息是从本地缓存中加载的,可能已经出日期 您的要求无法解析为一组可安装的软件包。
    • 问题 1 - barryvdh/laravel-dompdf 0.8.x-dev 需要 dompdf/dompdf ^0.8 -> 可由 dompdf/dompdf[v0.8.0] 满足。 - barryvdh/laravel-dompdf v0.8.0 需要 dompdf/dompdf ^0.8 -> 可由 dompdf/dompdf[v0.8.0] 满足。 - dompdf/dompdf v0.8.0 需要 phenx/php-font-lib 0.5.* -> 找不到匹配的包。 - barryvdh/laravel-dompdf ^0.8.0 的安装请求 -> barryvdh/laravel-dompdf[0.8.x-dev, v0.8.0] 可满足。 @Ad NAN
    • 所以,您遇到了权限问题,请确保您的用户拥有的 /home/w3cert/.composer/ 目录及其缓存子目录
    • 欢迎您,如果答案可以接受,请点赞或将其标记为已接受的答案。
    【解决方案3】:

    安装应该使用当前版本的 dompdf

    "barryvdh/laravel-dompdf": "^0.8.0"
    

    【讨论】:

    • 发现同样的错误...@Plxx 问题 1 - dompdf/dompdf v0.8.0 需要 phenx/php-font-lib 0.5.* -> 找不到匹配的包。 - barryvdh/laravel-dompdf v0.8.0 需要 dompdf/dompdf ^0.8 -> 可由 dompdf/dompdf[v0.8.0] 满足。 - barryvdh/laravel-dompdf v0.8.0 的安装请求 -> 可由 barryvdh/laravel-dompdf[v0.8.0] 满足。
    • 我刚刚用全新安装的 laravel 测试了这个过程,它工作得很好。您使用的是最新的作曲家版本(1.3.2)吗?
    • Composer 版本为 1.3.0。如何升级 Composer 版本。@Plxx
    • 你可以通过运行composer self-update升级作曲家
    • 更新 Composer 版本后将显示相同的错误。 @Plxx
    猜你喜欢
    • 2020-08-29
    • 1970-01-01
    • 1970-01-01
    • 2011-06-22
    • 2015-12-16
    • 2015-11-15
    • 2017-09-23
    • 2015-02-01
    • 2014-11-29
    相关资源
    最近更新 更多