我正在尝试通过以下方式安装以下软件包composer:
https://packagist.org/packages/cartalyst/sentry#dev-feature/laravel-5
当我做:
composer require cartalyst/sentry dev-feature/laravel-5
Run Code Online (Sandbox Code Playgroud)
我总是收到这个错误:
[InvalidArgumentException]
Could not find package dev-feature/laravel-5 at any version for your minimum-stability (stable). Check the package spelling or your minimum-stability
Run Code Online (Sandbox Code Playgroud)
如果我改变minimum-stability到dev它仍然会抱怨.
不过,如果我安装dev-master并手动将文件从合并dev-feature/laravel-5到dev-master,它工作正常.
因此,为什么我要问如何通过强制安装此软件包composer.
我将 Composer 文件中的 PHP 包名称从"name": "author/author-php"改为"name": "author/author"did composer install& composer update,将我的更改与 master 合并,然后创建了一个版本。
但是在 Packagist 上更新库后,新名称不起作用,composer 找不到它,composer require author/author我什至无法下载这个新版本。
注意:repo 名称仍然author-php如此,这是 Packagist 没有重命名的原因吗?
我正在尝试安装以下composer包:
composer require cr/hashcli
Run Code Online (Sandbox Code Playgroud)
这是我做的一个包.但是当我尝试安装它时,我收到以下错误:
{
"name": "cr/hashcli",
"description": "HashCLI - PHP CLI Tool For hashing",
"type": "library",
"keywords": ["hash", "cli"],
"license": "MIT",
"require": {
"php": ">=5.5"
},
"require-dev": {
"phpunit/phpunit": "^5.7"
},
"bin":[
"src/hashCLI"
],
"autoload": {
"classmap": [
"src/"
]
},
"autoload-dev": {
"classmap": [
"tests/"
]
}
}
Run Code Online (Sandbox Code Playgroud)
(稳定).检查包装拼写或最小稳定性
我的composer.json如下:
composer require cr/hashcli
Run Code Online (Sandbox Code Playgroud)
任何关于为什么会发生这种情况的想法以及如何解决这个问题?
更新:
我实际上发布了这个包,所以你可以自己看问题.
在这里查看naomik/yamldump
我正在尝试制作一个小型CLI工具并将其与作曲家打包在一起.
下面是该程序的一个非常简化的版本,但它足以证明我遇到的问题.
该项目有一个依赖项和一个"二进制"文件
composer.json
{
"name": "naomik/yamldump",
"version": "0.2.0",
"bin": [
"bin/yamldump"
],
"require": {
"symfony/yaml": "2.5.3"
}
}
Run Code Online (Sandbox Code Playgroud)
斌/ yamldump
#!/usr/bin/env php
<?php
// use Yaml namespace
use Symfony\Component\Yaml as Yaml;
// autoload
require_once "vendor/autoload.php";
// read yaml
$yaml = file_get_contents(sprintf("%s/%s", getcwd(), $argv[1]));
// create parser
$parser = new Yaml\Parser();
// parse the yaml
var_dump($parser->parse($yaml));
Run Code Online (Sandbox Code Playgroud)
所以当我在全球范围内安装它时,我得到了这个
$ composer global require naomik/yamldump=dev-master
Run Code Online (Sandbox Code Playgroud)
文件已安装到
~/.composer/vendor/bin/yamldump -> ../naomik/yamldump/bin/yamldump~/.composer/vendor/naomik/yamldump/~/.composer/vendor/symfony/yaml/这是一个问题,因为我不打算全局安装symfony/yaml ,我的包vendor/autoload.php不能再在正确的位置找到Yaml包.
我不介意 …
我有一个PHP库,我已经在packagist.org上发布了.我想从包中排除某些文件(例如几个JAR和我的测试),因此依赖于我的库的人不必下载它们.
我把以下内容放在我的composer.json中:
"archive": {
"exclude": ["/test", "composer.phar", "wiremock"]
}
Run Code Online (Sandbox Code Playgroud)
这似乎并没有改变下载的依赖项的内容.
Composer是否支持我想要的功能?我的归档/排除配置有什么作用?
如果你去https://packagist.org/packages/geekality/website并将它与你运行`composer show geekality/website时得到的结果进行比较.
这里发生了什么?我该如何解决?如果我将composer.json更改为目标版本/标记0.7.1,这对我来说显然存在于packagist和GitHub上,我收到一条错误消息,指出找不到请求的包.
我试过了
任何人都知道发生了什么事吗?
这似乎是由Packagist的一些问题造成的,并且我身边没有任何实际错误(或者其他似乎有同样问题的人).
我通过手动列出有问题的存储库来源暂时"解决"它composer.json.
我刚刚在packagist.org上创建了我的第一个组件,这是greensock-js的分叉版本.
我把"components/greensock-js": "1.11.*@dev"我的composer.json文件放入了require部分,但问题是作曲家找不到这个包,说
找不到匹配的包.
我做错了什么?谢谢.
我在laravel 5中制作的项目的作曲家更新有问题.每次我想用其他软件包更新作曲家(来自Packagist)我得到一个认证框(不是一个)然后即使我输入我的github/packagist帐户与否我这样结束:
Loading composer repositories with package information
Updating dependencies (including require-dev)
Authentication required (packagist.org):
Username:
Password:
[Composer\Downloader\TransportException]
Invalid credentials for 'http://packagist.org/p/doctrine/inflector$caf0d38e
3001eb2cbabe4192f701affcc10254307a3c01fa6b41a5579b2b648e.json', aborting.
Run Code Online (Sandbox Code Playgroud)
我一直试着在删除供应商的文件夹和作曲家锁之后安装作曲家,但再次出现了auth.我做了另一个laravel项目,但我从很多供应商文件夹开始(像doctrine inflector),他们需要auth.我还在作曲家json上尝试了一个github令牌.
谁知道问题是什么?先感谢您.
D:\Code\pricer>composer diagnose
Checking composer.json: OK
Checking platform settings: FAIL
The xdebug extension is loaded, this can slow down Composer a little.
Disabling it when using Composer is recommended.
Checking git settings: OK
Checking http connectivity: OK
Checking github.com rate limit: OK
Checking disk free space: OK
Checking composer version: OK
Run Code Online (Sandbox Code Playgroud)
由于xdebug,我没有使用auth和平台设置的速率限制失败的问题.
当我删除该包并再次安装composer时
Problem …Run Code Online (Sandbox Code Playgroud) 我正在尝试在新的Symfony2项目中使用我自己的bundle.我创建了项目,然后使用composer安装了所有必需的包.
这是我的项目的composer.json文件
{
"name": "symfony/framework-standard-edition",
"license": "MIT",
"type": "project",
"description": "The \"Symfony Standard Edition\" distribution",
"autoload": {
"psr-4": { "": "src/", "SymfonyStandard\\": "app/SymfonyStandard/" }
},
"require": {
"php": ">=5.3.9",
"symfony/symfony": "2.7.*",
"doctrine/orm": "^2.4.8",
"doctrine/doctrine-bundle": "~1.4",
"symfony/assetic-bundle": "~2.3",
"symfony/swiftmailer-bundle": "~2.3",
"symfony/monolog-bundle": "~2.4",
"sensio/distribution-bundle": "~4.0",
"sensio/framework-extra-bundle": "^3.0.2",
"incenteev/composer-parameter-handler": "~2.0",
"trancynn/devana-book-app": "dev-master"
},
"require-dev": {
"sensio/generator-bundle": "~2.3"
},
"scripts": {
"post-root-package-install": [
"SymfonyStandard\\Composer::hookRootPackageInstall"
],
"post-install-cmd": [
"Incenteev\\ParameterHandler\\ScriptHandler::buildParameters",
"Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::buildBootstrap",
"Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::clearCache",
"Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::installAssets",
"Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::installRequirementsFile",
"Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::removeSymfonyStandardFiles",
"Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::prepareDeploymentTarget"
],
"post-update-cmd": [
"Incenteev\\ParameterHandler\\ScriptHandler::buildParameters",
"Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::buildBootstrap",
"Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::clearCache",
"Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::installAssets",
"Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::installRequirementsFile",
"Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::removeSymfonyStandardFiles",
"Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::prepareDeploymentTarget" …Run Code Online (Sandbox Code Playgroud) 我将在 github 组织下接管一个相当流行的 PHP 包。它将从之前的位置移动,因此 Composer 包名称将过时。
我知道可以在 packagist 上标记一个已放弃的软件包(请参阅 fabpot/php-cs-fixer)并将其转发到一个新软件包,但我想确保我知道我要做什么,以便传输可以顺利。
我在 packagist 或 google 上找不到任何关于此的信息。
你怎么做到这一点?