I had a MIDlet project called Numbers that I decided to rename to Digits. Instead of simply renaming it, I decided to create a brand new project from scratch, so that I can have new directory, package name, .jad/.jar names, etc. Everything went fine, I copied the .java files to /src and resource files to /res and recompiled successfully. I used Eclipse Helios and Nokia's Series 40 5th Edition SDK, Feature Pack 1, for both projects.
Now, for some weird reason when the MIDlet starts in the emulator, it throws a NullPointerException, but not immediately on startup, but after a splash screen (it's a game). I haven't touched the code at all, so I rule out the possibility of an exception in the code, since it worked just fine when the project was called Numbers. After an hour of trial and error, I found a weird thing: if I open up the Application Descriptor and change the MIDlet name property from "Digits" to "Numbers" (old project name), everything runs perfectly and no exception is thrown.
I did a text search in all project files and the word "Numbers" only appears in the Application Descriptor and the .jad file, and only after I change the MIDlet name property, otherwise that string is nowhere to be found (no class names, no variables, no other properties, neither in the code nor in the project have a string "Numbers"). Where is that reference coming from? A bug in Eclipse or Series 40 emulator? What gives?