4.3. 使用本地 Maven 存储库

如果您在没有互联网连接的情况下运行 Apache Karaf 容器,并且您需要部署一个具有离线不可用依赖项的应用程序,您可以使用 Maven 依赖项插件将应用的依赖项下载到 Maven 离线存储库中。然后,您可以将此自定义 Maven 离线存储库分发到没有互联网连接的机器。

流程

  1. 在包含 pom.xml 文件的项目目录中,运行以下命令来下载 Maven 项目的存储库,如下所示:

    mvn org.apache.maven.plugins:maven-dependency-plugin:3.1.0:go-offline -Dmaven.repo.local=/tmp/my-project

    在本例中,构建项目所需的 Maven 依赖项和插件将下载到 /tmp/my-project 目录中。

  2. 编辑 etc/org.ops4j.pax.url.mvn.cfg 文件,将 org.ops4j.pax.url.mvn.offline 设置为 true。这可启用离线模式:

    ##
    # If set to true, no remote repository will be accessed when resolving artifacts
    #
    org.ops4j.pax.url.mvn.offline = true
  3. 将此自定义 Maven 离线存储库在内部分发到没有互联网连接的任何机器。