2017-07-11 6 views
0

私はいくつかのレガシーアプリケーションを実行しようとしていますが、ジオコーダーの依存関係で壁に当たっています。クラス 'ジオコーダープロバイダ GoogleMapsProvider'が見つかりません

メッセージはFatal error: Class Geocoder\Provider\GoogleMapsProvider' not foundです。

私のソースコードは、マークされた行でエラーを示しています

<?php 

namespace Application\Geocoder\Provider; 

use Geocoder\Exception\NoResultException; 
use Geocoder\Exception\QuotaExceededException; 
use Geocoder\Exception\UnsupportedException; 
use Geocoder\Exception\InvalidCredentialsException; 
use Geocoder\HttpAdapter\HttpAdapterInterface; 
use Geocoder\Provider\GoogleMapsProvider as ExtendGoogleMapsProvider; 

class GoogleMapsProvider extends ExtendGoogleMapsProvider 
{ <===== The error line is HERE 

私はwilldurand/geocoder依存インストール:

"require" : { 
    "doctrine/doctrine-orm-module" : "0.7.0", 
    "php" : ">=5.3.3", 
    "gedmo/doctrine-extensions" : "2.3.8", 
    "bjyoungblood/bjy-authorize" : "1.4.0", 
    "doctrine/common" : "2.3.0", 
    "twbs/bootstrap" : "2.3.2", 
    "zf-commons/zfc-user" : "0.1.x-dev", 
    "zf-commons/zfc-user-doctrine-orm" : "master-dev", 
    "mwillbanks/zfc-twitter-bootstrap" : "master-dev", 
    "zendframework/zendframework" : "2.2.5", 
     "willdurand/geocoder": "^3.3", 
    "firebase/php-jwt": "^4.0" 
    }, 

をそしてdiagnoseコマンドは言う:

$ php composer.phar diagnose 
Checking composer.json: FAIL 
name : invalid value (Extrapack), must match [A-Za-z0-9][A-Za-z0-9_.-]*/[A-Za-z0-9][A-Za-z0-9_.-]* 
No license specified, it is recommended to do so. For closed-source software you may use "proprietary" as license. 
require.gedmo/doctrine-extensions : exact version constraints (2.3.8) should be avoided if the package follows semantic versioning 
require.bjyoungblood/bjy-authorize : exact version constraints (1.4.0) should be avoided if the package follows semantic versioning 
require.doctrine/common : exact version constraints (2.3.0) should be avoided if the package follows semantic versioning 
require.twbs/bootstrap : exact version constraints (2.3.2) should be avoided if the package follows semantic versioning 
require.zf-commons/zfc-user-doctrine-orm : unbound version constraints (master-dev) should be avoided 
require.mwillbanks/zfc-twitter-bootstrap : unbound version constraints (master-dev) should be avoided 
require.zendframework/zendframework : exact version constraints (2.2.5) should be avoided if the package follows semantic versioning 
Checking platform settings: OK 
Checking git settings: OK 
Checking http connectivity to packagist: OK 
Checking https connectivity to packagist: OK 
Checking github.com rate limit: OK 
Checking disk free space: OK 
Checking pubkeys: 
Tags Public Key Fingerprint: 57815BA2 7E54DC31 7ECC7CC5 573090D0 87719BA6 8F3BB723 4E5D42D0 84A14642 
Dev Public Key Fingerprint: 4AC45767 E5EC2265 2F0C1167 CBBB8A2B 0C708369 153E328C AD90147D AFE50952 
OK 
Checking composer version: OK 

マイpharモジュール:

0123ソースコードで私を困惑
Phar: PHP Archive support enabled 
Phar EXT version 2.0.2 
Phar API version 1.1.1 
SVN revision $Id: 780be432570e80dd34c1a9c217ef87ade22bf136 $ 
Phar-based phar archives enabled 
Tar-based phar archives enabled 
ZIP-based phar archives enabled 
gzip compression enabled 
bzip2 compression enabled 
Native OpenSSL support enabled 

ONRの事は、クラス自体を拡張示し

use Geocoder\Provider\GoogleMapsProvider as ExtendGoogleMapsProvider; 

の使用です。これは私には意味がありません。

答えて

1

sourceを見ると、クラスGeocoder\Provider\GoogleMapsProviderは存在しません。

これは、使用していた従来のプロジェクトよりも新しいバージョンを使用している可能性があります。

を参照すると、3.x行に接尾辞Providerが削除されていることが確認できます。

まず、古いバージョンを使用することをお勧めします。 3.x行にサフィックスなしで名前を変更したプロバイダーを使用してみてください、また

$ composer require willdurand/geocoder:^2.8.2 

を実行します。クラス名が衝突を防ぐために

use Geocoder\Provider\GoogleMapsProvider as ExtendGoogleMapsProvider; 

を使用してエイリアスされ

use Geocoder\Provider\GoogleMaps; 

class GoogleMapsProvider extends GoogleMaps 
{ 
    // ... 
} 

注意。参考のため

は、以下を参照してください上の

+0

スポット!そこで、正しいクラスを使用するレガシー依存関​​係を取り消して使用します。 – Stephane

+0

私はあなたの選択肢の解決策を試すことにしました。私は 'ExtendGoogleMapsProvider'クラスの名前を' GoogleMaps'クラスに変更しましたが、これは役に立ちませんでした。次に、依存関係を 'willdurand/geocoder:^ 2.8.2'に格下げしました。これはうまく動作することが分かりました。だからこれが私がやる解決策です。 – Stephane

関連する問題