The build process can be changed to generate a version file that lives in the jar.  Then it can be lazy read as a resource and set the version.  In dev it just reads from a local file.  Something like that will work.

I just wanted to call it out, so we can find it by grepping for todos.