2014-02-14 2 views
0

Play 2 웹 사이트를 개발 중이며 종속성에 문제가 있습니다. 나는 문서를 검색했지만 관련성이 없다고 판결했다. 일부 유틸리티 클래스를 제공하는 재생]이 응용 프로그램 - 내 모델, 서비스, 컨트롤러를 포함하는 재생이 응용 프로그램 등 SBT에서 독립적 인 Play 2 프로젝트 간의 종속성 공유?

  • commons -

    • api :

      여기 내 프로젝트의 구조

    페이팔 통합, I는 api/build.sbtapicommons에 대한 종속성을 첨가. commons에서 나는 페이팔에 대해 다음 종속성을 추가 : 나는 단지 commons이 종속성을 추가해야한다고 생각

    "com.paypal.sdk" % "rest-api-sdk" % "0.7.1" 
    

    . 하지만 페이팔과 상호 작용하는 클래스를 api에 사용하면 ClassNotFound 오류가 발생합니다.

    SBT는 commons에 종속성을 추가 할 때 commons의 종속성을 검색하지 않아야합니까? api?

    페이팔에 의존성을 api/build.sbt에 추가하면 모든 것이 작동하지만 두 곳에서이 종속성을 갖게됩니다. 2.2.0

  • apicommons 두 개의 독립 SBT 프로젝트 (어떤 루트 프로젝트) api/build.sbtapicommons 사이
  • 종속성은 다음과 같습니다 제이 섹에 대한

    편집

    • 플레이 2 버전에 의문을 제기 :
    libraryDependencies ++= Seq(
        // Other dependencies ... 
        "com.mycompany" %% "commons" % "1.0.0" 
    ) 
    
  • +0

    정확한 재생 버전은 무엇입니까? 'api'와'commons'는 부모/루트 SBT 프로젝트가없는 두 개의 독립형 SBT 프로젝트입니까? 'commons'와'api' 사이의 의존성을 어떻게 정의 했습니까? 프로젝트 구조를 보여주기 위해'tree' 또는 유사한 것을 실행할 수 있습니까? 나는 주로'build.sbt'와'project/*. scala' 파일이 들어있는 디렉토리에 관심이 있습니다. –

    +0

    나는 'play dependencies'의 pastebin입니다 : http://pastebin.com/kxRS1tdK – c4k

    답변

    0

    을 감안할 때

    • "apicommons 두 개의 독립 SBT 프로젝트이다 (뿌리 프로젝트 없음)"아니오 libraryDependencies 통해
    • "api/build.sbtapicommons 사이의 종속성" 아이비 범위.

    이적으로 +에서 그런

    • api 프로젝트를 공유 commons 프로젝트 compile 종속성을.당신이 api 프로젝트에 페이팔 클래스에 당신은 직접 의존성을했습니다 "api에 페이팔과 상호 작용 클래스를 사용"따라서 프로젝트의 libraryDependencies에 페이팔 종속성을 추가해야하기 때문에

    주의하시기 바랍니다. 그것들은 그들 자신의 빌드 구성 (및 의존성)을 가진 별도의 프로젝트이며, 하나의 종속성에 상관없이 다른 종속성을 적절히 선언해야합니다.

    +0

    사실, 저는'api'에서 직접'PayPal' 클래스를 사용하지 않고 있습니다. 저는'commons'에서만 메서드를 호출하고 있습니다. 그러나이 메소드는'PayPal' 클래스를 호출합니다. 'api'가'commons'와 일시적으로 의존성을 공유하게하는 방법은 없습니다. – c4k

    관련 문제