How to eject my external drive when my Mac refuses because of Spotlight?
Simply turn indexing off for the drive and erase the contents of the journal on the volume. To do so, open Terminal and enter the following command:

sudo mdutil -Ei off "/Volumes/Name_of_Drive"


You must run this procedure as an admin. Enter your password when prompted. A reboot may be required.

Alternatively, as suggested by Simon White, just shut down the machine and then unplug the drive. The caveat is that the drive will start indexing when connected again, however.