Oracle compiles its code. It is not scripting language.
This has some interesting side effects that we don't always anticipate.
In my case (that brought me looking here) this occurred because I changed a text constant in a Package Definition, but did not recompile the body. When the body went to reference the constant, it had been deleted and a new one created in its place ... BUT IT WAS STILL LOOKING FOR THE OLD OBJECT
Likely if you are mysteriously getting this error message, it is because you reference an object that was recompiled. Recompile the object with the reference and it should correct.