是否最好将项目jar文件Maven化或将它们放在WEB-INF / lib中?

我一直在为我的Spring MVC项目需要的所有jar文件执行此操作:

call mvn install:install-file -DgroupId=vegetables -DartifactId=potatoes -Dversion=1.0 -Dfile=vegetables-1.0.jar -Dpackaging=jar -DgeneratePom=true 

最近,我必须超出一些限制,你可以在pom.xml文件中列出多少依赖项,因为我收到一条错误消息:

 Your command line is too long 

所以我从我的项目不再使用的pom.xml中删除了一些依赖项,并且我能够再次使用maven运行项目。

我的问题是,我应该将所有jar文件安装到我的Maven存储库中,就像我到目前为止一样吗? 或者我应该将其中一些放入WEB-INF/lib目录?

这里的最佳做法是什么?

我一直在做与命令行相同的操作,但是通过在我的POM中配置maven-install-plugin (请阅读最后的注释):

   org.apache.maven.plugins maven-install-plugin   install-vegetables initialize  install-file   ${project.basedir}/lib/vegetables-1.0.jar vegetables potatoes 1.0 jar    install-minerals initialize  install-file   ${project.basedir}/lib/minerals-1.0.jar minerals rocks 1.0 jar     

它效率得多,因为文件反复安装,但它比手工制作文件要烦人得多。 无论如何,我认为你应该试一试。

所有依赖项都应驻留在本地存储库下。 根据Maven约定/最佳实践,您不应该在项目中保留jar文件。

将您的项目转换为基于完全战争的Maven项目。 这会将所有依赖项(jar文件)放在webapp的WEB-INF/lib目录下。 因此,您不必担心长路径。

您只需要在pom.xml文件中添加依赖项,无需手动安装它们。 Maven将下载库并在需要时将其放入本地存储库。 仅当您要使用第三方(自定义)库时,才可以将其安装在本地存储库中。