2011-02-10 6 views
6

동일한 소스에서 동일한 애플리케이션의 여러 버전을 빌드해야하는 Android Project가 있습니다.Android AdMob 및 Maven

이 작업을 수행하려면, 나는 android plugin for Maven

각 버전은 몹 광고를 포함 할 수 있어야 사용할 수 있습니다. 그래서 내 POM에서 나는

<dependency> 
    <groupId>com.admob.android</groupId> 
    <artifactId>ads</artifactId> 
    <version>20101109-ANDROID-3312276cc1406347</version> 
    <scope>system</scope> 
    <systemPath>THE_PATH\libs\admob-sdk-android.jar</systemPath> 
</dependency> 

내가 응용 프로그램을 실행할 때 그래서 분명히 패키지가 제대로되지 않습니다 나는이 예외를

java.lang.ClassNotFoundException: com.admob.android.ads.AdView 

를 얻을 빌드시 오류를 얻을 수 있지만하지 않는이 의존성을 추가 포함되어 있습니까?

답변

9

런타임 필수 라이브러리에는 시스템 범위를 사용할 수 없습니다. 로컬 저장소 또는 리포지토리 서버 (예 : mvn install:installFile 등)에 jar를 배포하고 scope 및 systemPath를 종속성 선언에서 제거합니다.

업데이트 : 최신 버전의로 내 Maven Android SDK Deployer는 로컬 메이븐 저장소 또는 당신을 위해 저장소 서버에 SDK에서 AdMob의 항아리의 설치 할 수 있습니다.

1

메이븐 안드로이드 SDK 배포자를 사용하려면 다음을 수행하십시오

  • 복제하려면 REPO :

    자식 클론 https://github.com/mosabua/maven-android-sdk-deployer.git

  • 이동하여 SDK의 관리자 및 모든 API를 설치합니다 (이 아직 완료하지 않은 경우 다소 시간이 걸릴 수 있음)

  • 올바른 환경 변수를 ANDR로 설정했는지 확인하십시오. OID_HOME. Windows의 경우이 될 수 있습니다

    세트 ANDROID_HOME = C :/안드로이드-SDK-창

  • 실행 설치 :

    C : \ 도구 \ 받는다는 - 안드로이드-SDK-디플로> MVN

    설치

이 작업을 완료 한 후에는 pom.xml의 모든 안드로이드 종속성을 사용할 수 있습니다.

<dependency> 
     <groupId>com.google.android.admob</groupId> 
     <artifactId>admob</artifactId> 
     <version>6.4.1-r11</version> 
    </dependency> 

합니다 (GitHub의 페이지의 전체 목록이있다)