I'm not so experienced, but I have been working on some major Java EE projects (using maven2) with very clear ways to handle installation / delivery across platforms.
1) One of them was to use snapshots for development, and then release maven, components, and basic web applications. Thus, delivery:
- war / ear files
- List item
- file properties
- sgdb files
- some others
And the teams will use these files to host new versions of applications on different platforms. I believe that this process is strict and allows you to always easily save the various configurations transferred during the production process, but itโs not very flexible, the process is a bit difficult, and it sometimes led us to do some dirty things, such as reorienting the war class to fix regression ... This is an e-commerce website with 10 million unique visitors per month and 99.89% availability.
2) Another one I've seen is to check the sources on each platform, and then install the snapshot artifacts in the local repository. Then the application server will use these snapshots in the .m2 folder. Since the creation of the new version, there is no real delivery process, we just need to update the components / webapps sources, perform some clean maven installation and restart the application server. I think it is more flexible, but I see some flaws, and this approach seems dangerous to me. There is a frontoff on this website, I donโt know the numbers, but itโs much less than the first. It also has great support for most employees of 130,000.
I assume that depending on the website, its exposure to the public and accessibility, we must adapt the delivery strategy to the needs.
I am not here to ask which solution is better, but I wonder if you saw different things and what strategy would you use in this case?
java git java-ee svn maven-2
Sebastien lorber
source share