我知道,默认情况下,对于maven依赖项,它将从本地存储库(.m2目录)获取所需的所有内容。在我的应用程序中,我不希望它依赖于本地目录,而是依赖于特定的位置。我已经在<systemPath>../path/to/file/</systemPath>中使用了<scope>system</scope>,但它仍然依赖于.m2目录。有什么方法可以改变maven依赖项的依赖位置吗?
在我的应用程序中,我使用原生代码(C++),并且有.nar和.so文件。在本例中,我特别需要依赖于特定目录中的一个.so文件,但它总是位于.m2目录中。有没有能解决这个问题的插件?
另外,请注意我使用的是Maven 2.2.1。
发布于 2013-02-02 01:31:02
首先,在Maven中没有什么需要修复的。Maven就是这样工作的。在本例中,您需要一个不在maven存储库中的工件,这意味着您需要将该文件传输到maven存储库中,然后您可以使用简单的依赖关系来使用该文件(.so)。有两种可能的解决方案:
通过给定groupId、artifactId和version,使用install-file将该特定文件作为工件安装到本地存储库中
mvn安装:install-file...
另一种也是最好的解决方案是使用repository manager并将所需的文件安装到存储库管理器中,这使得其他人也可以使用它,而不仅仅是您。
https://stackoverflow.com/questions/14650711
复制相似问题