Is it possible that all clients are handled by one project (one WAR) and share the differences outside the war?
Of course, but ... the bear is with me for a second.
With a 4 hour creation / deployment time, I would say that the problem between the jenkins server and the production servers can be a problem. If the update is not viable, you will need to optimize your project setup.
Typically, 90% of the war file size is made up of the collection of libraries your application relies on to do its job (spring, hibernate, struts, etc.). Suppose you are currently storing them in your WEB-INF / lib folder, you can consider extracting them and installing them in the general path to the application classes, removing them from your war.
This will not shock me if, after this operation, you do not need further optimizations ...
source share