我目前正在编译Web应用程序中使用的第三方库列表。该应用程序部署在tomcat中。我想知道哪个第三方罐子实际上必须或应该包含在发行版中。特别是,我目前想知道如何最好地使用javax-libraries。例如,我会假定javax.annotation-3.1.1.jar可以以某种标准方式使用,例如将其作为扩展下载,而不用将其包含到我自己的软件分发中。但是,我将它作为jaxws-api的一个传递依赖项包含在我需要的Web服务中,因此它包含在应用程序的lib目录中。 我知道我可以使用扩展列表清单条目来导致目标机器下载并安装这样的罐子。但是,它们对于同一台机器上的其他应用程序也是可见的,这可能需要相同库的其他版本。罐的重新分配
所以,我对第三方库的一些问题,我将非常高兴,如果有人可以给我一些提示:
什么是使用第三方库的最佳做法?
javax-libraries是否有一些最佳实践?
可以并且应该避免重新分配而不会给安装应用程序的人造成很大负担?
我的确在使用Maven,并且包含servlet-api和作用域“provided”。另外,我可以在Tomcat的lib文件夹中找到Annotations-api.jar以及其他一些jar文件。但是,这到目前为止还没有包含所有的javax库。例如,jaxws-api不包含在该文件夹中。安装,顺便说一句,没问题。我只考虑我必须打包哪些罐子,以及哪些罐子可以出于许可原因而出现。 – avidD