What is wrong with the current way to develop / package / distribute a (large) Java application?

There are many applications that are advancing to osgi. And there is a lot of material on the Internet about the benefits of using OSGi. But I see no problems with the current way of creating / distributing a large Java web application using non-OSGi (old way). Can anyone

  • first lay out the non-OSGi and OSGi way to develop, package, distribute a large Java web application.
  • Secondly, indicate a problem related to the non-OSGi method?
  • Third, how moving to OSGi would solve these problems. Specific examples and reference resources may also be provided.
+6
source share
1 answer

The β€œcurrent” method is WAR files that have nothing in common. If you have three web applications and all of them use commons-lang, you need to deploy three copies of the same jar file (you may be right that this is not a problem for most people).

In addition to this, OSGi deploys packages, not applications. This allows you to update or activate parts of the application at runtime. Not sure if this is important to many people. In fact, the lack of "granularity of applications" leads to the fact that a large number of "moving parts" are visible in the form of all the packages that make up the application. It scares people deploying. OSGi is working to fix this.

Finally, in OSGi, container functionality is also often part of the application suite of packages (unlike a black box such as JBoss, which is clearly separate from the application code). Bring your own container. Very flexible, but again confusing for people with deployment.

+3
source

Source: https://habr.com/ru/post/896308/


All Articles