Не удается загрузить пакет Composer

Я новичок в использовании пакетов композитора. Я получил несколько на работу, но я наткнулся на пакет Google Maps, который я хотел бы использовать, и я не могу заставить его загружаться правильно.

пакет php-google-maps

Моя попытка использования пакета:

<?php

require './vendor/autoload.php';

use \PHPGoogleMaps\Service\Geocoder;
use \PHPGoogleMaps\Service\GeocodeError;
use \PHPGoogleMaps\Service\GeocodeResult;
use \PHPGoogleMaps\Service\GeocodeException;

$map = new \PHPGoogleMaps\Map;
// Rest of GMap code goes here...
?>

Это не с сообщением Class 'PHPGoogleMaps\Map' not found

Файл composer.json:

{
    "require" : {
        "nategood/httpful":"*",
        "nesbot/carbon": "dev-master",
        "php-google-maps/php-google-maps": "dev-master"
    }
}

1 ответ

Решение

В пакете composer.json для PHPGoogleMaps есть ошибка. Структура каталогов после установки не соответствует стандарту автозагрузки PSR-0.

Я представил PR, чтобы исправить проблему, но пока она не будет устранена, вы можете определить свой собственный репозиторий для пакета (изменив target-dir):

{
    "require" : {
        "nategood/httpful":"*",
        "nesbot/carbon": "dev-master",
        "jakzal/php-google-maps": "dev-master"
    },
    "repositories": [
        {
            "type": "package",
            "package": {
                "name": "jakzal/php-google-maps",
                "version": "dev-master",
                "source": {
                    "url": "https://github.com/galen/PHPGoogleMaps",
                    "type": "git",
                    "reference": "master"
                },
                "autoload": {
                    "psr-0": {"PHPGoogleMaps": ""}
                },
                "target-dir": "PHPGoogleMaps"
            }
        }
    ]
}
Другие вопросы по тегам