java - Redistribution of jars -
i compiling list of third-party libraries used in web application. application deployed in tomcat. wondering of third-party jars must or should included in distribution. in particular, wondering how best use javax-libraries. instance, assume javax.annotation-3.1.1.jar can used in standardized way, e.g., downloading extension, without me including distribution of own piece of software. however, have included transitive dependency jaxws-api need web services , therefore included in application's lib directory. understand use extension-list manifest entry cause target machine download , install such jars. however, visible other applications on same machine may require other versions of same libraries.
so, have questions 3rd party libs , glad if give me hints:
what best practice use third-party libraries?
is there best practice javax-libraries?
can , should avoid redistribution without imposing large burden on person installing application?
i have admit, haven't understood notion of "redistribution" here, maybe you're using concrete application server terminology, i'll try provide common answer here, assuming have war.
war (stands web archive) should include third-parties used application. these reside in web-inf/lib folder.
now, each java ee server should "understand" javax libraries, because contains relevant interfaces. "javax" libraries provide interfaces , implementation/code works these interfaces provided application server developers.
for example servlets technology, tomcat (or name web server) contain httpservlet abstract class inside internal libs, scan war , find implement/extend it, how recognizes servlets actually.
now, shouldn't include servlet-api jar war, because exists in application server.
if you're using build tools maven, allow build war thirdparties used compilation won't packed war.
i didn't understand why difficult install application - in easiest case - throw war web server , that's it.
hope helps
Comments
Post a Comment