Droid-Fu build error

2.5k Views Asked by At

I am trying to build Droid-Fu as specified on the GitHub page but the build is failing. Here is the message which I got after running mvn package inside the Droid-Fu folder

[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

Any idea what I may be doing wrong?

5

There are 5 best solutions below

0
On BEST ANSWER

The Maps JAR is not on Maven Central, since it contains proprietary code. You can use the maven-android-sdk-deployer to easily install it from your local SDK installation.

To make sure that you have all platform versions, first run

android update sdk --no-ui

Then git clone the SDK deployer and run

mvn install

If you only want to install one specific platform version, run with the -P <version> flag.

3
On

The error said the Google map API is missing. You need to install it first. You have to install that through the android UI. I believe it is one of the add-ons.

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

1
On

I had the same problem. The newer versions of the Android SDK have shifted directories slightly. You have to point maven at the correct path for the Google Maps jar version 9.

Just replace path-to-android-sdk with your base directory in the following command

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

Then you want to execute the following command to build the droid-fu jar: mvn package

Hope this helps!

0
On

I had similar problem compiling droid-fu and Googled around for solution. In my case helped launching

android update sdk

command without --no-ui option. Then I saw some Google addons were not installed at all. So installed them and problem went away.

0
On

I´ve used the maven-android-sdk-deployer "to install the libraries necessary to build Android applications with Maven and the Android Maven Plugin directly from your local Android SDK installation"

(download as zip, unzip into a temporary folder, run "mvn install" [EnvVars must be set])

After this the maven build of the android project runs successful, but i used Maps API 8_r2:

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