Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/amazon-web-services/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Amazon web services 编写器AWS无效版本字符串^5.3_Amazon Web Services_Composer Php - Fatal编程技术网

Amazon web services 编写器AWS无效版本字符串^5.3

Amazon web services 编写器AWS无效版本字符串^5.3,amazon-web-services,composer-php,Amazon Web Services,Composer Php,我正在通过composer加载AWS API,出现以下错误: [RuntimeException] Could not load package aws/aws-sdk-php in http://packagist.org: [Unexpected ValueException] Could not parse version constraint ^5.3: Invalid version st ring "^5.3" [UnexpectedValueException] Could no

我正在通过composer加载AWS API,出现以下错误:

[RuntimeException]
Could not load package aws/aws-sdk-php in http://packagist.org: [Unexpected
ValueException] Could not parse version constraint ^5.3: Invalid version st
ring "^5.3"

[UnexpectedValueException]
Could not parse version constraint ^5.3: Invalid version string "^5.3"
配置:

{
    "name": "RepositoryName",
    "homepage": "http://homepage.elasticbeanstalk.com",
    "archive": {
        "directory": "dist",
        "format": "zip",
        "skip-dev": false,
        "absolute-directory": "/var/www/html/web/dist"
    },
    "repositories": [
        { "type": "composer", "url": "http://packagist.org" }
    ],
    "require": {
        "abeautifulsite/jquery-minicolors": "2.1.6",
        "aws/aws-sdk-php": "2.6.*"
    },
    "require-dependencies": true
}

如您所见,我请求的是
2.6.*
版本,而不是
^5.3
。有没有办法解决这个问题?在本地和AWS上运行相同的结果。

这是由于语法错误或不受支持而导致的编写器分析错误

我认为,旧版本的Composer无法处理
^
操作符

首先尝试编写器自我更新


  • 您是否使用最新的弹性豆茎堆叠?最新的堆栈应该提供支持新语法功能的最新版本的Composer
  • 您可以通过在生产环境中预先安装依赖项来避免此问题。这意味着在本地“构建”您的应用程序并将其打包以供分发(包括所有依赖项),然后上载/安装/配置
  • 您还可以添加beanstalk配置文件,目标是运行
    composer自我更新
.ebextensions\composer.config

commands:
  01updateComposer:
    command: export COMPOSER_HOME=/root && /usr/bin/composer.phar self-update

option_settings:
  - namespace: aws:elasticbeanstalk:application:environment
    option_name: COMPOSER_HOME
    value: /root
此处引用Symfony 2 AWS部署指南,因为其中包含该文件的示例:

和eExtensions指南:



我正在使用localhost和本地安装的Composer。也完成了作曲家的自我更新

如何使用Composer安装aws sdk php

如果您只想获取aws sdk包以在本地使用它, 您可以使用以下composer.json文件作为示例:

composer.json

{
    "name": "my/project-using-aws-package",
    "require": {
        "abeautifulsite/jquery-minicolors": "2.1.6",
        "aws/aws-sdk-php": "2.6.*"
    },
    "autoload": {
        "psr-4": {
            "MyApp\\": "app/"
        }
    }
}
运行:
composer安装-vvv--profile--preferred dist-o


这将安装aws sdk php包的v2.6.16。请注意,这不是最新版本,但我认为您有意定义了
2.6.*
。如果不考虑提高版本。

我遇到了同样的问题,但我也收到了过期的警告:

警告:composer的此开发版本已超过30天。建议通过运行“composer.phar self update”进行更新,以获得最新版本

因此,我运行了
php composer.phar自我更新
然后
php composer.phar更新


它对我很有效:)

我使用的是本地主机和本地安装的Composer。完成了composer的自我更新,所以问题不是部署到AWS,而是获取AWS sdk php包以在本地使用它?好吧,问题完全错了。我已经更新了我的答案,并包含了一个获取包的composer.json文件。@Justinas我遇到了同样的问题,并且在
composer自我更新之后它工作了。