Question

I have an API in the form of a JAR that I would like to use in my Android app. Not sure if it should be part of the project in Eclipse or kept separate and added to the project properties. This JAR also needs to be packaged with the application, so how is that done for Android apps?

Was it helpful?

Solution

As explained by this SO question:

  • Your Project -> right click -> Import -> Archive File -> yourjar.jar
  • Your Project -> right click -> Properties -> Java Build Path -> Libraries -> Add Jar -> yourjar.jar

You must add it as "external JAR" files, and set the "Order and Export" in your Eclipse project.

eclipseexternallibrary2.png


Update February 2012:

Pacerier mentions in the comment having an issue (ClassNotFound) even though he did declare the library.
He had:

class not found

However, the solution was simple:

Over 1 hour wasted. Man was I pissed!
Solution: make sure your JAR is compiled with 1.6 and not 1.7.
Argh

OTHER TIPS

Thanks to VonC for pointing me in the right direction. I had the same symptoms but for a different library (I needed to add org.apache.commons.codec.binary.Base64 for an Android project). The solution that worked for me was SLIGHTLY different. Herewith the steps that I followed:

  1. Download library from http://commons.apache.org/codec/download_codec.cgi
  2. Extract commons-codec-1.6.jar from the tarball and copy to a local folder
  3. In eclipse:
    • right-click project name
    • choose "Properties" from context menu
    • on "Libraries" tab, select "Add External JARs..."
    • navigate to and select commons-codec-1.6.jar from the location you extracted it to your local drive
  4. The jar file will now appear under "referenced Libraries" in your Package Explorer and you will be able to reference the library in your code.
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top