Maven自定义文件结构

Maven custom file structure

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

重要的是要提到我使用 c++ 作为编程语言并且 Maven-nar-plugin

我希望能够 运行 像这样的命令:mvn dependency:resolve 所需的库将放在文件夹 Librairies 中。这样我所要做的就是 link include 库的文件夹到我在 Visual Studio.

中的项目

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

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

工作区
|
|-- 项目1
| |-- pom.xml
|
|-- 项目2
| |-- pom.xml
|
|-- 图书馆
|-- ExempleLib-V-2.0
| |-- 包括
| |-- 库
|
|-- ExempleLib-V-3.1

当然,你可以告诉 maven 你的本地存储库在这个 Librairies 目录中而不是在 ~/.m2/repository

你可以在启动时传递参数maven.repo.local,它会在那里下载所有东西

mvn -Dmaven.repo.local=库全新安装

我找到了使用 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>