Wow, there are so many possible things that could be wrong here, I don't know which to ask you about first. Based on the wording of your question ("when I run the jar"), I will assume that you running the app as "java -jar xxx.jar", in which case yo are expecting the resources to be bundled in the JAR file. So my response is: Is your Ant task that builds the JAR including both the classes in target/classes and the resources in main/resources?
Yes, that looks correct to me. The contents of main/resources should be copied as-is into the JAR file.
By the way, I prefer a two-step approach. The first step is to build a directory structure that contains what will be in the JAR/WAR/EAR/SAR file. The second step is to use the jar task to place those contents into the file. This way I always have a directory that contains what went into the final archive file.
subject: Loading resources from jar using maven and ant