2013-10-21 3 views
1

배포 할 계획 인 사용자 지정 모듈에 외부 라이브러리를 포함하는 것이 가장 좋습니다.ZF2 모듈 및 외부 의존성

일반적으로 응용 프로그램의 공급 업체 디렉토리 아래에 외부 라이브러리를 배치합니다. 하지만 맞춤 모듈을 배포 할 때 모든 의존성이 충족되도록하고 싶습니다. 즉, 사람들이 앱의 공급 업체 디렉토리에 의존성을 수동으로 다운로드하도록 강요하고 싶지는 않습니다.

다음과 같이 모듈 디렉토리 아래에 공급 업체 디렉토리를 포함시키는 올바른 방법이 있습니까?

/application_dir 
    /vendor 
    /module 
      /my_module 
       /vendor 
+2

의존성을 위해 작성기를 사용하십시오. 이것은 오늘날 가장 보편적 인 모범 사례이며 커뮤니티에서 인정하는 유일한 방법입니다. 코드를 사용하여 종속성을 제공하고 업데이트가 있다면 무엇을합니까? – Sam

+0

샘이 모든 것을 말했습니다. 귀하의 의존성을 처리하기 위해 작곡가를 사용하십시오. – Soundz

답변

1

사용 작곡가, 여기 설명서를 찾을 수 있습니다

Composer Documentation

은 기본적으로 당신이 당신의 응용 프로그램의 루트에있는 파일 composer.json을 수정하고 필요 섹션에서 종속성을 추가합니다 :

{ 
    "name": "zendframework/skeleton-application", 
    "description": "Skeleton Application for ZF2", 
    "license": "BSD-3-Clause", 
    "keywords": [ 
     "framework", 
     "zf2" 
    ], 
    "homepage": "http://framework.zend.com/", 
    "require": { 
     "php": ">=5.3.3", 
     "zendframework/zendframework": "2.2.*", 
     "doctrine/common": "dev-master", 
     "zendframework/zendpdf": "2.*", 
     "zendframework/zendservice-recaptcha": "2.*", 
     "thiagoalessio/tesseract_ocr": ">= 0.1.2", 
     "zf-commons/zfc-user": "dev-master" 
     // add your requirements here** 
    } 
} 

종속성이 전용 github 저장소에있는 경우 다음과 같이 추가 할 수 있습니다.

{ 
    "require": { 
     "vendor/my-private-repo": "dev-master" 
    }, 
    "repositories": [ 
     { 
      "type": "vcs", 
      "url": "[email protected]:vendor/my-private-repo.git" 
     } 
    ] 
} 

추가 한 후에 composer.phar 업데이트를 잊지 마세요.

+0

이것은 아마도 바보 같은 질문 일지 모르지만 외부 라이브러리가 리포지토리에서 호스팅되지 않지만 단순히 웹 페이지에서 zip 파일로 다운로드하면 어떻게됩니까? 자신의 프로젝트 소스 트리 아래에 포함 시키시겠습니까? – trajan