Maven自定义文件结构

时间:2018-02-07 18:32:40

标签: maven dependency-management maven-nar-plugin

我想为开发创建一个特定的自定义文件结构,我想知道它是否可以用maven完成。

重要的是要提到我使用c ++编程语言和Maven-nar-plugin

我希望能够运行如下命令: mvn dependency:resolve ,所需的库将会进入文件夹 Librairies 。这样我所要做的就是将库的 include 文件夹链接到Visual Studio中的项目。

我不想用maven编译我只想使用它的依赖管理器

我知道您可以更改SourceDirectory,但是您可以更改Librairies的安装位置吗?

工作区
|
| - Project1
| | - pom.xml
|
| - Project2
| | - pom.xml
|
| - Librairies
| - ExempleLib-V-2.0
| | - 包括
| | - lib
|
| - ExempleLib-V-3.1

2 个答案:

答案 0 :(得分:1)

当然,您可以告诉maven您的本地存储库位于此Librairies目录中,而不是〜/ .m2 / repository

你可以在启动时传递参数maven.repo.local,它会下载所有内容

mvn -Dmaven.repo.local = Librairies clean install

答案 1 :(得分:1)

我找到了一种使用 maven-dependency-plugin 的方法。

以下代码将获取每个依赖项并将其复制到 Librairies 文件夹。
您甚至可以使用 unpack-dependencies 而不是 copy-dependencies 来直接解压缩文件夹中的依赖项

      <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-dependency-plugin</artifactId>
          <version>2.7</version>
          <executions>
            <execution>
            <id>default-cli</id>
              <goals>
                <goal>copy-dependencies</goal>
              </goals>
              <configuration>
                <outputDirectory>
                  ../Libraries
                </outputDirectory>
              </configuration>
            </execution>
          </executions>
      </plugin>