Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/wordpress/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 我想用Maven从我的libs项目文件夹加载所有JAR_Java_Maven_Deployment_Build_Dependencies - Fatal编程技术网

Java 我想用Maven从我的libs项目文件夹加载所有JAR

Java 我想用Maven从我的libs项目文件夹加载所有JAR,java,maven,deployment,build,dependencies,Java,Maven,Deployment,Build,Dependencies,我有一个使用Maven的Java项目。在我的项目中,我有一个名为libs的文件夹,其中包含我无法从internet/外部存储库加载的所有JAR 我的问题是如何向Maven指定在包装、构建等过程中包含这些罐子 Maven新手,如果这是一个愚蠢的问题,我很抱歉 编辑:我有一个自动工具,可以在Git上查找我的pom.xml,在不同的环境中构建和部署我的项目。因此,按照建议将其添加到本地Maven repo中不会有任何帮助,因为它只能在我的PC上工作。如果我用JAR添加一个libs文件夹,它将在我所在的

我有一个使用Maven的Java项目。在我的项目中,我有一个名为
libs
的文件夹,其中包含我无法从internet/外部存储库加载的所有JAR

我的问题是如何向Maven指定在包装、构建等过程中包含这些罐子

Maven新手,如果这是一个愚蠢的问题,我很抱歉

编辑:我有一个自动工具,可以在Git上查找我的
pom.xml
,在不同的环境中构建和部署我的项目。因此,按照建议将其添加到本地Maven repo中不会有任何帮助,因为它只能在我的PC上工作。如果我用JAR添加一个
libs
文件夹,它将在我所在的任何位置工作


如果不清楚或我弄错了,请在评论中询问我。

与您的编辑相反,添加到本地Maven回购协议将有所帮助,并且可以按如下方式自动执行:

  • 注意。(当前版本的
    maven安装插件是
    2.5.2
    。我会使用它而不是默认版本。)
  • 的外观应如下所示:

      <configuration>
        <file>${project.basedir}/path/to/your/libs/lib-X.jar</file>
        <repositoryLayout>default</repositoryLayout>
    
        <!-- match the dependency declaration for this artifact -->
        <groupId>logan.wlv</groupId>
        <artifactId>lib-X</artifactId>
        <version>x.y.z</version> 
        <packaging>jar</packaging>
        <!-- -------------------------------------------------- -->
      </configuration>
    
    这样就可以在没有显式概要文件激活的情况下第一次运行mvn initialize


Maven不应该做可能重复的工作。只需将这些JAR包含在类路径中。@Generic这会将本地JAR添加到maven本地存储库中,但这不是我在这里要做的。@Mick我同意,但例如,我将代码放在GIT上,外部JAR放在lib中,如果有人接受了代码,他必须重新设置类路径,对吗?我有一个自动工具,使用Maven来构建和部署我的项目,如果我没有错的话,只有在本地使用Eclipse设置类路径才是好的?请看,或者你更清楚地知道,
..
可能指向其他地方?在每台新电脑上执行一次
安装:安装文件
命令的shell脚本与在每台新电脑上运行一次
mvn initialize-P lib
非常相似。@Thorbjørnravandersen我知道。虽然更改默认设置(约定优先于配置!;)不是很常见,但您是对的<代码>${settings.localRepository}
应该也能工作(我从未使用过或尝试过),而且更通用。谢谢你的提示。@ThorbjørnRavnAndersen引入一个额外的脚本文件,与将所有相关信息都放在同一个POM中并能够使用著名的
mvn…
命令执行相比,它有什么意义?
  <profile>
    <id>lib</id>
    <activation>
      <file>
        <missing>${settings.localRepository}/logan/wlv/lib-X/x.y.z/lib-X-x.y.z.jar</missing>
      </file>
    </activation>
    ...
  <profile>