【问题标题】:How do you create libs from 2 maven builds with the same name?如何从 2 个具有相同名称的 Maven 构建中创建库?
【发布时间】:2011-09-09 14:49:59
【问题描述】:

我需要创建 2 个同名的库,一个 32 位库和一个 64 位库。我想在 maven 的一个版本中执行此操作,但是我看不到有可能的方法。

我尝试对模块执行此操作,但是项目在将 artifactId 设置为模块名称并将其默认传递给各种事物(例如 MSVC 编译器、链接器和清单)时感到困惑。

我也尝试在两种不同的执行方式中执行此操作,但是我无法将 64 位对象定义转储到文件中以供清单读取,除非还包括链接器在先前构建中提出的 32 位对象。

有没有人进行过多次构建,生成了两个同名的文件,放在不同的目录中?或者有人对如何做到这一点有任何想法吗?

【问题讨论】:

  • 您可以使用profiles 来执行此操作
  • 我认为 Maven 的全部意义在于它不会产生具有相同名称的不同工件。

标签: architecture maven build 64-bit 32-bit


【解决方案1】:

当您说“同名”时,我将其解读为相同的 groupId 和 artifactId。单个 Maven 模块可以生成多个具有相同 groupId 和 artifactId 但具有不同分类器的工件。您可以为此使用maven-assembly-plugin。为每个工件定义assembly descriptors,为程序集描述符提供不同的ID(例如x32和x64),这些ID将用作工件分类器,然后在您的pom中定义assembly:single mojoexecutionconfigured with those two assembly descriptors

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2022-06-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-07-28
    • 2013-04-05
    • 1970-01-01
    相关资源
    最近更新 更多