2016-11-16 13 views
1

Symfony 2.7をSymfony 3.0または3.1にアップグレードしようとしています。 私はプロジェクトでpropel、propel-bundleを使用しています。 Symfonyのアップグレード手順に関する多くのページを読んでいます。作曲家経由でやってください。 私は作曲家をアップグレードしました。 compser.jsonファイルの内容変更 :propelバンドルでSymfony 2.7から3.0(3.1)にアップグレードする

{ 
    "name": "symfony/framework-standard-edition", 
    "license": "MIT", 
    "type": "project", 
    "description": "The \"Symfony Standard Edition\" distribution", 
    "autoload": { 
     "psr-4": { 
      "": "src/", 
      "SymfonyStandard\\": "app/SymfonyStandard/" 
     }, 
     "files": [ "vendor/propel/propel-bundle/PropelBundle.php" ] 
    }, 
    "require": { 
     "symfony/symfony": "3.1.*", 
     "php": ">=5.6.11", 
     "doctrine/orm": "^2.5", 
     "doctrine/doctrine-bundle": "^1.6", 
     "symfony/swiftmailer-bundle": "^2.3", 
     "symfony/monolog-bundle": "^2.8", 
     "sensio/distribution-bundle": "^5.0", 
     "sensio/framework-extra-bundle": "^3.0.2", 
     "sensio/generator-bundle": "^3.0", 
     "incenteev/composer-parameter-handler": "^2.0", 

     "twig/extensions": "1.4.*,>=1.4", 
     "symfony/assetic-bundle": "2.8.*,>=2.8", 
     "propel/propel": "2.0.0-alpha6", 
     "propel/propel-bundle": " 3.0.x-dev", 
     "phpunit/phpunit": "5.6.*,>=5.6", 
     "liuggio/excelbundle": "2.1.*,>=2.1" 
    }, 
    "scripts": { 
     "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": [ 
      "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::clearCache", 
      "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::installAssets", 
      "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::removeSymfonyStandardFiles", 
      "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::installRequirementsFile", 
      "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::prepareDeploymentTarget" 
     ] 
    },  
    "config": { 
     "bin-dir": "bin" 
    }, 
    "extra": { 
     "symfony-app-dir": "app", 
     "symfony-bin-dir": "bin", 
     "symfony-var-dir": "var",  
     "symfony-web-dir": "web", 
     "symfony-assets-install": "relative", 
     "incenteev-parameters": { 
      "file": "app/config/parameters.yml" 
     }, 
     "branch-alias": { 
      "dev-master": "3.0-dev" 
     } 
    } 
} 

を...と私は/ proeplバンドル/ PropelBundle()クラスが見つからなかったが、しかし、パスが正しいと推進アップグレードプロセスの終了を得ました。

誰かがそれに関する経験を持っていますか...または助言していますか?私は右の可能性が出たウィッヒpropelBundleバージョンにしようとしています ...

おかげ

+1

非常に優れたウォークスルーがKNPLabsによって提供されています。http://knpuniversity.com/screencast/symfony3-upgrade おそらくサブスクリプションをお持ちではありませんが、ビデオのすぐ下のテキストにすべてのスクリーンキャストを提供しています。 – pavlovich

+0

Thaks pavlovich!私はすぐにチェック! – aBanhidy

+1

私がやったのは、新鮮なSymfony 3xプロジェクトをインストールしてから、作曲者を使ってサードパーティのものを追加することでした。ほとんどの場合、適切な依存関係がロードされます。私はレガシーコードを新しいプロジェクトにマージするか、コンポーザーをコンベンショナルなプロジェクトにコピーし、ベンダーを削除してから再インストールします。 – Cerad

答えて

0

最後に適切なソリューションである/だった:あなたはここからPropelBundleのソースコードをダウンロードすることができます: https://github.com/propelorm/PropelBundle

...しかしこのページでは、このバンドルをSymfony2用に書いています。これはSymfony 3.0または3.1で動作します。 私がしたこと:どこかのソースコードを自分のコンピュータにダウンロードしてください。 Symfony/vendor/propel/propel/src/Propelフォルダーに移動します。新しいフォルダを作成します:をバンドルし、ダウンロードしたPropelBundleフォルダをここにコピーします。もちろん 私が作曲しPropel2をインストールする前に:

"propel/propel": "[email protected]" 

を私がしたものだけをした後:AppKernel.phpを編集:

public function registerBundles() { 
     $bundles = array(
      ... 
      new Propel\Bundle\PropelBundle\PropelBundle(), 
      ... 
     ); 

     if (in_array($this->getEnvironment(), array('dev', 'test'))) { 
      ... 
     } 

     return $bundles; 
    } 

/新しいpropel.yml設定ファイルを追加し、アプリにそれを含めますconfig/config.ymlファイル。

...最終的には動作します! それは良い解決策であるかどうかわかります。現時点では、次のようになります:IT WORKS FINE!

最後に、私の最初のコメントにコメントを追加してくれた皆さんに感謝したいと思います。

関連する問題