Keytool throws: The program can’t start because jli.dll is missing from your computer

In order to develop an application that uses the Google Maps, you should obtain first a Maps API key registered via the MD5 fingerprint of the debug certificate. To find the MD5 fingerprint of your debug certificate you should use the keytool to generate it.

When using the keytool you may encounter following error:

android keytool error jli

The Keytool as well as jli.dll files are part of Java SDK /bin directory, and when you generate the MD5 code, both Keytool and jli.dll files should be in the same directory, if they are not in the same directory, then the above error is thrown.

The simplest way to generate the MD5 fingerprint is to:

1. Copy both keytool and jli.dll into debug keystore location:

  • Windows Vista: C:\Users\<user>\.android\debug.keystore
  • Windows XP: C:\Documents and Settings\<user>\.android\debug.keystore
  • OS X and Linux: ~/.android/debug.keystore

2. Navigate with the command prompt to debug keystore location and run the following command to:

a)  generate a Debug certificate:

keytool -list -alias androiddebugkey -keystore debug.keystore -storepass android -keypass android


b) generate a Release certificate:

keytool -list -keystore debug.keystore


3. Copy the generated MD5 fingerprint and navigate to to get the Map key.

Eclipse always stops at 27% – “Launching delegate”.

This week when I reinstalled both Eclipse and Android SDK on a new computer, I encountered a problem with re-runing the android application. The emulator was starting just fine for the first time, but every time after doing some changes in the project and runing it again, the progress bar was stopping on 27% and showing: “Launching: Launching delegate…” message. It remains in this state for a long time and Eclipse becomes unresponsive.

My first thought was that the computer on which Eclipse was installed is too low in performance to run the Android emulator.

Actually, it appears that this is an issue: #21073.

However, there’s an easy workaround to avoid it if the AVD emulator is launched from the AVD Manager within Eclipse. The issue happens when launching the first emulator from the Run button in Eclipse.

To avoid:

  1. Start Eclipse
  2. Window -> AVD Manager
  3. Start an emulator
  4. Run the project