If you're using Eclipse then you can go to "File->export->Java->Runnable Jar file" to create an executable Jar.
As for shipping the source code - whether you make a runnable JAR or use a batch file you shouldn't need to include a copy the source code. When delivering a batch file all you need to ship with it are the compiled .class files and your batch script can invoke Java on those. My guess is that your current batch file is invoking javac (the java compiler) and compiling the source on the fly? Or perhaps you don't realise that once the .class files are generated Java doesn't require the .java source files to actually run the program.
I followed your instructions but I got export errors which is odd because my game runs fine without errors on Eclipse.
Here's what export errors showed.
I'm not providing the source code to the user. All source code been compiled into .class files. I actually provided what my batch file is doing above. The batch file is basically a .txt that says "java -cp NicholasGame.jar Game". what exactly does "-cp" mean? I know the batch file is one way which I already performed before making this thread but I have used other people jar files and all I needed to do was click the jar file and run the application and they did not have any .class files with the jar file