2014-03-18 2 views
0

Symfony를 사용해 보았습니다.하지만 마이그레이션을 테스트하지 않기로 결정한 후 몇 가지 문제가 있습니다.Symfony 2.4.2 composer 마이그레이션 번들

문서에서 나는 이것을 composer json에 추가해야한다는 것을 배웠습니다.

"require": { 
     "php": ">=5.3.3", 
     "symfony/symfony": "~2.4", 
     "doctrine/orm": "~2.2,>=2.2.3", 
     "doctrine/doctrine-bundle": "~1.2", 
     "doctrine/doctrine-migrations-bundle": "dev-master", 
     "twig/extensions": "~1.0", 
     "symfony/assetic-bundle": "~2.3", 
     "symfony/swiftmailer-bundle": "~2.3", 
     "symfony/monolog-bundle": "~2.4", 
     "sensio/distribution-bundle": "~2.3", 
     "sensio/framework-extra-bundle": "~3.0", 
     "sensio/generator-bundle": "~2.3", 
     "incenteev/composer-parameter-handler": "~2.0" 
    }, 

을하지만이 작동하지 않습니다 :

"doctrine/doctrine-migrations-bundle": "dev-master", 

그래서 이것은 내가 지금 가지고있는 것입니다. 올바른 버전을 찾을 수 없습니다.

오류 인 - 교리/교리 마이그레이션 다발 데브 마스터의 설치 요청 -

문제 1 > 교리/교리 마이그레이션 다발 [DEV 마스터]에 의한 만족할. - doctrine/doctrine-migrations-bundle dev-master에는 doctrine/migrations가 필요합니다. * -> 일치하는 패키지가 없습니다.

잠재적 원인 : - 패키지 이름 에있는 오타 - 패키지는 은 자세한 내용은 https://groups.google.com/d/topic/composer-dev/_g3ASeIFlrc/discussion를 참조 설정 최소 안정성에 따라 안정적인 충분한 버전에서 사용할 수 없습니다.

이 후 많은 Google 검색 (https://github.com/doctrine/DoctrineMigrationsBundle/issues/54)을 시도하고 "doctrine/doctrine-bundle"버전을 설정하려고 시도했습니다. "~ 1.2"는 aplha 버전을 요구합니다. 이것은 설치를 계속했지만 새로운 문제를 야기합니다.

new Doctrine\Bundle\MigrationsBundle\DoctrineMigrationsBundle(), 

내가 터미널에서 이것을 실행하려고 : PHP 응용 프로그램/콘솔 교리 : 마이그레이션 : 상태

그러나이 제공

는 $ 번들 배열로 응용 프로그램의 커널이 줄을 추가 한 후 다음 오류 :

치명적 오류 :/Doctrine \ DBAL \ Migrations \ Tools \ Console \ Command \ LatestCommand 클래스가/Applications/MAMP/htdocs/symfony/vendor/doctrine/doctrine-migrations-bundle/Doctrine/Bundle/MigrationsBundle/Command/MigrationsLatestDoctrine Command.php on line 30

지금 당장 나는 실종 된 것을 모른다. 나는이 일을하는 법을 모른다. 누군가가 나를 올바른 방향으로 밀어 줄 수 있기를 바랍니다! 감사!

답변

4

doctrine/doctrine-migrations-bundle을 설치하려면 doctrine/migrations도 설치해야합니다. composer.json의 사본/붙여 넣기를 기반으로 추가하지 않았습니다.

는 다음과 같이하십시오 :

"require": { 
    "php": ">=5.3.3", 
    "symfony/symfony": "~2.4", 
    "doctrine/orm": "~2.2,>=2.2.3", 
    "doctrine/doctrine-bundle": "~1.2", 
    "doctrine/migrations" : "dev-master", 
    "doctrine/doctrine-migrations-bundle" : "dev-master", 
    "twig/extensions": "~1.0", 
    "symfony/assetic-bundle": "~2.3", 
    "symfony/swiftmailer-bundle": "~2.3", 
    "symfony/monolog-bundle": "~2.4", 
    "sensio/distribution-bundle": "~2.3", 
    "sensio/framework-extra-bundle": "~3.0", 
    "sensio/generator-bundle": "~2.3", 
    "incenteev/composer-parameter-handler": "~2.0" 
}, 

는이 오류를 얻고있다 :

Fatal error: Class 'Doctrine\DBAL\Migrations\Tools\Console\Command\LatestCommand' not found in /Applications/MAMP/htdocs/symfony/vendor/doctrine/doctrine-migrations-bundle/Doctrine/Bundle/MigrationsBundle/Command/MigrationsLatestDoctrineCommand.php on line 30 

doctrine/migrations 때문에 다운로드되지 않았으며 여러 클래스는 doctrine/doctrine-migrations-bundle 누락되어있다.

+0

여기에 뭔가가 빠졌습니까? 6 호선에 뭔가있어? :) –

+0

@DionSnoeijen, Line 6은 실제로 7 번 라인과는 다른 것입니다. 번들이 올바르게 작동하는 데 필요한 모든 구성 요소입니다. 'doctrine/migrations' 만 설치해서 그 구성 요소를 독자적으로 사용할 수는 있지만 여기서는 성취하려고하는 것이 아니라고 생각합니다.) – Ianlet

+0

오! 그게 내 바보 같아. 나는 그것을 완전히 놓쳤다! 고마워요! –

관련 문제