Money spent to build a tank goes back into a local economy somewhere, at least a good portion of it does. And tanks don't sit idle. Every tank needs a tank crew, and every tank crew trains extensively. Tanks also are imbeded in infantry units to protect the tanks, so you pay those troops too.
There is no question there are more useful things for the government to spend its money on, but until you can convince your fellow Republicans of that it will never happen. In the meantime, folks who otherwise wouldn't have a job, do.