Every time you run "java.exe" (or the equivalent on other platforms) from the command line, you are actually creating a new JVM, running a completely separate programs. Static variables are not shared across JVMs, only within a single JVM -- i.e., within a single java.exe.
If you want one JVM to include multiple independent "programs" running at the same time, consider using threads. You could invoke your code in multiple threads, and all of them would run at once.
If you want multiple JVMs to share the same variables, you have to set that up explicitly using some kind of networking technology (RMI, JavaSpaces, JINI, CORBA, etc.) This is never a trivial undertaking, nor is it ever completely transparent.