Just don't treat resources as files, because when inside a JAR, they aren't files - they are JAR entries (see JarFile and JarEntry). If you only need to read from the "file" use getResourceAsStream instead of trying to use File and FileInputStream. If you need to write to it you're simply out of luck.
I need to read, write, and hash file(s) that are in the JAR. So I'm outa luck I guess? I guess the alternative is a deployment/installation script that doesn't utilize a single JAR. Thanks for the info.
You can't write into a jar file, no. Often what people do is to provide a template, or default, file in the jar. If there are changes required to that, then they write it to a real file and use that from then on. Whether that fits into your requirements I can't tell.