【问题标题】:How to change JAR build path in Jenkins?如何在 Jenkins 中更改 JAR 构建路径?
【发布时间】:2019-10-22 20:52:22
【问题描述】:

我正在通过 Jenkins 构建一个 Java 项目。正在 C:\Windows\System32\config\systemprofile.m2\repository\com\other 文件夹中创建 JAR(在我在 Jenkins 中执行 maven clean install 之后)。

有什么办法可以改变这条路吗?我想通过 SSH 将 JAR 发送到 VM。但是,我无法访问此文件夹,因为这是系统目录。

谢谢。

【问题讨论】:

  • 您可以使用maven-dependency-plugin 将创建的工件复制到特定位置...此外,您不需要mvn clean install,只需要mvn clean package。 ...?
  • 另一个更好的选择是将您的工件部署到存储库管理器并在构建管道中执行单独的步骤,获取工件并将其部署到您需要的位置..

标签: java maven jenkins jenkins-pipeline


【解决方案1】:

出于某种原因,您的 Jenkins 将此目录用作本地 Maven 存储库。我会在 Jenkins 或 settings.xml 中定义一个不同的本地存储库。确保没有两个正在运行的构建同时使用同一个本地存储库也很重要,因为本地存储库不能同时使用。

【讨论】:

    【解决方案2】:

    如果您使用 maven 构建,请将以下内容添加到您的 pom.xml 中

    <build>
      <plugins>
    <plugin>
      <groupId>org.apache.maven.plugins</groupId>
      <artifactId>maven-jar-plugin</artifactId>
      <version>2.3.1</version>
      <configuration>
        <outputDirectory>your custom location</outputDirectory>
      </configuration>
    </plugin>
    </plugins>
    </build>
    

    【讨论】:

      【解决方案3】:

      默认情况下,maven 应该在您的 pom.xml 旁边的 target 目录中创建您的构建工件(包括 JAR 文件)。

      您可以通过指定构建目录在pom.xml 中更改此行为:

      <build>
         <directory>/some/other/dir</directory>
      </build>
      

      您所指的目录是您的本地 maven 存储库,其中包含 maven 正在使用的所有 JAR 文件。您可以阅读有关本地 maven 存储库here 的更多信息。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2020-04-10
        • 2017-06-10
        • 2015-07-10
        • 2015-04-22
        • 1970-01-01
        • 2021-08-17
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多