2014-10-07 69 views
0

我开发了一个库,我决定把它扔给packagist。我composer.json如下所示为什么我无法通过包装商下载我的包装?

{ 
    "name": "kamranahmedse/php-geocode", 
    "type": "library", 
    "description": "A wrapper around the Google Geocoding API to get different details such as latitude, longitude, country, city, district, postcode, town and street number regarding some specific address.", 
    "keywords": ["location", "address", "addresses", "google", "map", "maps", "gmap", "gmaps", "geocode", "geocoder", "geocoding"], 
    "homepage": "https://github.com/kamranahmedse/php-geocode", 
    "license": "MIT", 
    "authors": [ 
     { 
      "name": "Kamran Ahmed", 
      "homepage": "http://kamranahmed.info", 
      "role": "Developer" 
     } 
    ], 
    "autoload": { 
     "psr-0": { 
      "Geocode": "src/" 
     } 
    }, 
    "require": { 
     "php": ">=5.2.0" 
    } 
} 

和我主持我的包在https://packagist.org/packages/kamranahmedse/php-geocode和相关的Git仓库,https://github.com/kamranahmedse/php-geocode。现在为了测试我的包是否工作正常,我所做的是创建一个文件夹。这个文件夹里我创造了这个简单的composer.json文件,其中包含

{ 
    "require": { 
     "kamranahmedse/php-geocode": "*" 
    } 
} 

但每当我尝试运行composer install,我发现了以下错误:

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

Problem 1 - The requested package kamranahmedse/php-geocode could not be found in any version, there may be a typo in the package name.

任何人都可以请看看,看看我在这里做错了吗?我一直在努力尝试,但无法找到任何错误,因为这将是我对packagist的第一个包,而且我没有任何经验。

+0

'composer require“kamranahmedse/php-geocode = dev-master”'。您需要获取开发主分支,您没有标签或版本。 – 2014-10-07 12:29:48

回答

6

我相信这是因为您没有任何稳定版本,并且作曲者默认仅在指定*时下载稳定版本。

要么将​​您的版本规格更改为dev-master,要么将您的minimum-stability设置为dev

+2

正确的答案是标记一个版本。使用分支对每个人都是一种痛苦,Stackoverflow充满了处理不能使用标记版本的负面影响的问题。 – Sven 2014-10-07 18:07:00

+1

@只要理解并使用'composer.lock'文件,我认为在项目初期或实验性时期与分支机构合作可以。 – 2014-10-08 19:02:47

相关问题