0

我正在使用 maven-ear-plugin 构建一个带有瘦战争的耳朵文件。

我正在与另一个提供每日快照的团队合作我得到的是如果我没有在本地构建快照的情况

ear 文件有每日构建(很好),war 文件有我最近的快照(不好)。

例如,ear 文件将具有 imported1-2017-010101.jar ,war 文件将具有 imported1-SNAPSHOT.jar

这似乎是由于每日构建的名称中有日期戳,而快照没有。

如果我在构建 ear 文件之前构建导入库的快照。例如ear 文件将有 imported1-SNAPSHOT.jar 并且war 文件将没有库。

这是耳朵配置

<profile>
  <id>skinny</id>
  <activation>
    <property>
      <name>!skinny</name>
    </property>
  </activation>
  <dependencies>
    <dependency>
      <groupId>my.library</groupId>
      <artifactId>war-1</artifactId>
      <type>pom</type>
      <version>${project.version}</version>
    </dependency>

    <dependency>
      <groupId>my.library</groupId>
      <artifactId>war-2</artifactId>
      <type>pom</type>
      <version>${project.version}</version>
    </dependency>

  </dependencies>
  <build>
    <plugins>
      <plugin>
        <artifactId>maven-ear-plugin</artifactId>
        <configuration>
          <defaultLibBundleDir>/lib</defaultLibBundleDir>
          <skinnyWars>true</skinnyWars>
        </configuration>
      </plugin>
    </plugins>
  </build>
</profile>

我有什么问题或者插件在这种情况下不起作用吗?

4

1 回答 1

1

我通过查看我的 Maven 存储库快照行为解决了这个问题。

我正在使用 Artifactory 作为 maven 存储库。它允许您在 3 种不同的行为之间进行选择来命名您的快照,其中一种使用时间戳,另一种使用 -SNAPSHOT,其他接受部署者选择的名称。

我已将我的快照行为更改为 -SNAPSHOT,从存储库中删除了旧版本的快照(我不知道这是否真的有必要),并且现在可以正确创建 skinnyWars。

[]的

于 2017-12-12T22:36:33.957 回答