Mavenize您的项目jar文件或将它们放入WEB是最好的
我一直在为我的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
(请阅读最后的注释):
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-install-plugin</artifactId>
<executions>
<execution>
<id>install-vegetables</id>
<phase>initialize</phase>
<goals>
<goal>install-file</goal>
</goals>
<configuration>
<file>${project.basedir}/lib/vegetables-1.0.jar</file>
<groupId>vegetables</groupId>
<artifactId>potatoes</artifactId>
<version>1.0</version>
<packaging>jar</packaging>
</configuration>
</execution>
<execution>
<id>install-minerals</id>
<phase>initialize</phase>
<goals>
<goal>install-file</goal>
</goals>
<configuration>
<file>${project.basedir}/lib/minerals-1.0.jar</file>
<groupId>minerals</groupId>
<artifactId>rocks</artifactId>
<version>1.0</version>
<packaging>jar</packaging>
</configuration>
</execution>
</executions>
</plugin>
它的效率要低得多,因为文件一遍又一遍地安装完毕,但比手动创建文件要麻烦得多。 无论如何,我认为你应该试试看。
你所有的依赖应该驻留在本地仓库中。 根据Maven公约/最佳实践,您不应该将jar文件保留在您的项目中。
将您的项目转换为完全基于战争的Maven项目。 这会将所有的依赖关系(jar文件)放在你的webapp的WEB-INF/lib
目录下。 因此,您不必担心漫长的道路。
您只需要在pom.xml文件中添加依赖关系,无需手动安装它们。 Maven将下载这些库,并在需要时将其放入本地存储库。 只有当你想使用第三方(自定义)库时,你才可以将它安装到本地存储库中。
链接地址: http://www.djcxy.com/p/29655.html上一篇: Is it best to Mavenize your project jar files or put them in WEB
下一篇: How to include system dependencies in war built using maven