[英]Using IDEA with maven2, how to add a non-maven .jar?
我想在我的IDEA Web应用程序项目中包含一个使用maven2(pom.xml)的.jar。
如何在不使用maven的项目中添加.jar?
最简单的方法是使用maven:install-file
在本地存储库中安装jar,如下所示(从文档中窃取:
mvn install:install-file -Dfile=path-to-non-maven.jar \
-DgroupId=some-id \
-DartifactId=some-artifact \
-Dversion=some-version \
-Dpackaging=jar
然后像任何其他依赖项一样将它添加到您的POM中。 如果它需要与很多人共享,你可以考虑建立一个像Nexus或Artifactory这样的本地实例(我们在工作的地方使用Artifactory并且效果很好)。
你基本上有三个选择:
使用install:install-file
在本地存储库中install:install-file
jar(请参阅安装第三方JAR的指南 )。 这非常简单易行,但这会使您的POM无法移植。 如果您独自一人并且不打算分发您的pom.xml,这可能是一个选项。
使用deploy:deploy-file
在公司存储库中deploy:deploy-file
jar。 这当然是企业环境中的理想和首选方案。
如果您没有使用公司存储库但仍在团队中工作,请设置基于文件的存储库并通过源存储库共享它。
谷歌addjars maven插件是个好主意。 这可以通过以下步骤完成:
将所有依赖项添加到lib
文件夹代码库。
将google addjars插件添加到<build>
<plugin> <groupId>com.googlecode.addjars-maven-plugin</groupId> <artifactId>addjars-maven-plugin</artifactId> <version>1.0.5</version> <executions> <execution> <goals> <goal>add-jars</goal> </goals> <configuration> <resources> <resource> <directory>${basedir}/lib</directory> </resource> </resources> </configuration> </execution> </executions> </plugin>
mvn compile
现在将创建一个本地repo并将所有jar作为依赖项添加。 然后mvn compile
将作为魅力。
为了让想法解决依赖关系转到module settings -> modules -> dependencies
添加lib文件夹。
参考: https : //code.google.com/archive/p/addjars-maven-plugin/issues
试着猜出问题是什么:
1)你有一个带有jar foo.jar的maven项目A.
2)你有一个非maven项目B,你想使用相同的jar(不使用maven)
3)你在窗户上?
如果是这样,那么:
从c:\\documents and settings\\your_username\\.m2\\name_of_jar,
抓取jar c:\\documents and settings\\your_username\\.m2\\name_of_jar,
并将其粘贴到项目B的WEB-INF / lib目录中
maven install:install-file非常适合在缓存中添加本地JAR,但如果您在外部使用存储库(即Archiva或Nexus),那么最好通过“mvn deploy”将其提供给所有人: deploy-file“ - 该命令的类似参数。
只在本地安装意味着如果你出于某种原因清除你的本地缓存(我已经多次这样做以解决本地缓存损坏的这个或那个问题),那么你也松开了本地JAR并且需要记住重新添加它。 如果它通过Nexus或Archiva在本地DSL存储库中,那么你的状态很好 - 只需将生成的groupId,artifactId添加到POM中并继续。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.