2011-02-17 8 views
3

Je suis en train de construire Droid-Fu comme indiqué sur la page GitHub, mais la construction échoue. Voici le message que je suis arrivé après l'exécution mvn package dans le dossier Droid-FuDroid-Fu construire erreur

[INFO] artifact junit:junit: checking for updates from central 
Downloading: http://powermock.googlecode.com/svn/repo//com/google/android/maps/maps/9_r1/maps-9_r1.jar 
[INFO] Unable to find resource 'com.google.android.maps:maps:jar:9_r1' in repository powermock-repo (http://powermock.googlecode.com/svn/repo/) 
Downloading: http://repo1.maven.org/maven2/com/google/android/maps/maps/9_r1/maps-9_r1.jar 
[INFO] Unable to find resource 'com.google.android.maps:maps:jar:9_r1' in repository central (http://repo1.maven.org/maven2) 
[INFO] ------------------------------------------------------------------------ 
[ERROR] BUILD ERROR 
[INFO] ------------------------------------------------------------------------ 
[INFO] Failed to resolve artifact. 

Missing: 
---------- 
1) com.google.android.maps:maps:jar:9_r1 

    Try downloading the file manually from the project website. 

    Then, install it using the command: 
     mvn install:install-file -DgroupId=com.google.android.maps -DartifactId=maps -Dversion=9_r1 -Dpackaging=jar -Dfile=/path/to/file 

    Alternatively, if you host your own repository you can deploy the file there: 
     mvn deploy:deploy-file -DgroupId=com.google.android.maps -DartifactId=maps -Dversion=9_r1 -Dpackaging=jar -Dfile=/path/to/file -Durl=[url] -DrepositoryId=[id] 

    Path to dependency: 
    1) com.github.droidfu:droid-fu:jar:1.0-SNAPSHOT 
    2) com.google.android.maps:maps:jar:9_r1 

---------- 
1 required artifact is missing. 

for artifact: 
    com.github.droidfu:droid-fu:jar:1.0-SNAPSHOT 

Toute idée de ce que je peux faire mal?

Répondre

3

Les cartes JAR ne sont pas sur Maven Central, car il contient du code propriétaire. Vous pouvez utiliser le maven-android-sdk-deployer pour l'installer facilement à partir de votre installation SDK locale.

Pour vous assurer que vous avez toutes les versions de la plate-forme, première manche

android update sdk --no-ui 

Puis git clone le SDK deployer et exécutez

mvn install 

Si vous ne souhaitez installer une version plate-forme spécifique, exécutez avec le drapeau -P <version>.

0

L'erreur indique que l'API de carte Google est manquante. Vous devez l'installer en premier. Vous devez installer cela à travers l'interface utilisateur Android. Je crois que c'est l'un des add-ons.

http://code.google.com/android/add-ons/google-apis/installing.html

+0

ne fonctionne pas. Installé toutes les API. Je pense que maven est à la recherche du fichier sur le site du projet. – Abhinav

+0

Je ne trouve pas ces pots sur le repo. avez-vous essayé de suivre les instructions ci-dessus pour installer manuellement ces pots localement? – dongshengcn

+0

Impossible de trouver les pots n'importe où. Une idée où je devrais regarder? – Abhinav

5

J'ai eu le même problème. Les versions les plus récentes du SDK Android ont légèrement décalé les répertoires. Vous devez pointer maven sur le chemin correct pour la version jar Google Maps 9.

Il suffit de remplacer path-to-android-sdk avec votre répertoire de base dans la commande suivante

mvn install: install-fichier -DgroupId = com.google.android.maps -DartifactId = cartes -Dversion = 9_r1 -Dpackaging = pot -Dfile = path-to-android-sdk /add-ons/addon_google_apis_google_inc_9/libs/maps.jar

Ensuite, vous voulez exécuter la commande suivante pour construire le pot droid-fu: package mvn

Espérons que cela aide!

+0

La première commande install-file fonctionne (j'ai remplacé 9_r1 par 9_r2), mais le paquetage mvn ne fonctionne toujours pas pour que j'essaie d'obtenir les google maps sur le net plutôt que sur le cache local. Y at-il un moyen de faire la première commande _sticky_ ou quelque chose comme ça? –

0

J'ai eu le même problème compilation droïde-fu et googlé autour de la solution. Dans mon cas, le lancement a contribué à

mise à jour android sdk

commande sans option --no-ui. Ensuite, j'ai vu que certains addons de Google n'étaient pas installés du tout. Donc les a installés et le problème est parti.

0

utilisé le maven Ive-android-sdk-deployer "pour installer les bibliothèques nécessaires pour construire des applications Android avec Maven et le plugin Maven Android directement depuis votre Android SDK installation locale"

(Télécharger au format Zip, décompressez en un dossier temporaire, exécutez "mvn install" [envvars doit être])

Après cela, le build Maven du projet Android fonctionne avec succès, mais j'utiliser Maps API 8_r2:

<dependency> 
    <groupId>com.google.android.maps</groupId> 
    <artifactId>maps</artifactId> 
    <version>8_r2</version> 
    <scope>provided</scope> 
</dependency>