Maven 程序集:添加同一工件的不同版本

2024-02-10

我使用 Maven 程序集插件创建应用程序存档。 我的 pom 中存在的所有依赖项都包含在内,没有任何问题。

现在我需要包含同一工件的两个或多个版本。

如果我在我的 pom 中放入

<dependencies>
        [...]
        <dependency>
            <groupId>db.test</groupId>
            <artifactId>my-model</artifactId>
            <version>1.0.3</version>
        </dependency>
        <dependency>
            <groupId>db.test</groupId>
            <artifactId>my-model</artifactId>
            <version>1.1.0</version>
        </dependency>
</dependencies>

从源代码中,dependenvcy 解析器会删除旧版本,并且仅将 1.1.0 打包到存档中

我尝试使用程序集 xml 描述符文件包含该 jar。而且我没有找到任何解决方案。

一个可能的解决方案是手动将所有需要的 model.jar 放入一个文件夹中,并告诉程序集将其复制到存档中。但我正在寻找更可配置的解决方案。

任何想法 ?


我找到了一个解决方案,使用 maven-dependency-plugin 复制已解析的 pom 依赖项和其他 jar。

<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<version>2.1</version>
<executions>
    <execution>
        <id>copy-dependencies</id>
        <phase>package</phase>
        <goals>
            <goal>copy-dependencies</goal>
        </goals>
        <configuration>
            <outputDirectory>${project.build.directory}/lib</outputDirectory>
            <overWriteReleases>false</overWriteReleases>
            <overWriteSnapshots>false</overWriteSnapshots>
            <overWriteIfNewer>true</overWriteIfNewer>
            <includeScope>runtime</includeScope>
        </configuration>
    </execution>
    <execution>
        <id>copy-model</id>
        <phase>package</phase>
        <goals>
            <goal>copy</goal>
        </goals>
        <configuration>
            <artifactItems>
                <artifactItem>
                    <groupId>my.test.pkg</groupId>
                    <artifactId>my-model</artifactId>
                    <classifier>server</classifier>
                    <version>1.0.3</version>
                    <type>jar</type>
                </artifactItem>
                <artifactItem>
                    <groupId>my.test.pkg</groupId>
                    <artifactId>my-model</artifactId>
                    <classifier>server</classifier>
                    <version>1.1.0</version>
                    <type>jar</type>
                </artifactItem>
            </artifactItems>
            <outputDirectory>${project.build.directory}/lib</outputDirectory>
        </configuration>
    </execution>
</executions>

现在我只需在我的程序集 xml 中添加以下几行

    <fileSet>
        <directory>${project.build.directory}/lib</directory>
        <outputDirectory>/lib</outputDirectory>
        <filtered>false</filtered>
        <includes>
            <include>*.jar</include>
        </includes>
        <fileMode>0600</fileMode>
    </fileSet>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Maven 程序集:添加同一工件的不同版本 的相关文章

  • ElasticBeanstalk Java,Spring 活动配置文件

    我正在尝试通过 AWS ElasticBeanstalk 启动 spring boot jar 一切正常 配置文件为 默认 有谁知道如何为 java ElasticBeanstalk 应用程序 不是 tomcat 设置活动配置文件 spri
  • AES 加密 Java/plsql

    我需要在Java和plsql DBMS CRYPTO for Oracle 10g 上实现相同的加密 解密应用程序 两种实现都工作正常 但这里的问题是我对相同纯文本的加密得到了不同的输出 下面是用于加密 解密过程的代码 Java 和 PLS
  • Android Studio 在编译时未检测到支持库

    由于 Android Studio 将成为 Android 开发的默认 IDE 因此我决定将现有项目迁移到 Android studio 中 项目结构似乎不同 我的项目中的文件夹层次结构如下 Complete Project gt idea
  • 在浏览器中点击应用程序时播放框架挂起

    我正在 Play 中运行一个应用程序activator run 也许 5 次中有 3 次 它会挂起 当我去http localhost 9000 它就永远坐在那里旋转 我看到很多promise timed out错误也 我应该去哪里寻找这个
  • 在数据流模板中调用 waitUntilFinish() 后可以运行代码吗?

    我有一个批处理 Apache Beam 作业 它从 GCS 获取文件作为输入 我的目标是根据执行后管道的状态将文件移动到两个 GCS 存储桶之一 如果管道执行成功 则将文件移动到存储桶 A 否则 如果管道在执行过程中出现任何未处理的异常 则
  • Convert.FromBase64String 方法的 Java 等效项

    Java 中是否有相当于Convert FromBase64String http msdn microsoft com en us library system convert frombase64string aspx which 将指
  • Java 页面爬行和解析之 Crawler4j 与 Jsoup

    我想获取页面的内容并提取其中的特定部分 据我所知 此类任务至少有两种解决方案 爬虫4j https github com yasserg crawler4j and Jsoup http jsoup org 它们都能够检索页面的内容并提取其
  • 使用替换字符串中多个单词的最有效方法[重复]

    这个问题在这里已经有答案了 此刻我正在做 Example line replaceAll replaceAll cat dog replaceAll football rugby 我觉得那很丑 不确定有更好的方法吗 也许循环遍历哈希图 ED
  • 无法理解 Java 地图条目集

    我正在看一个 java 刽子手游戏 https github com leleah EvilHangman blob master EvilHangman java https github com leleah EvilHangman b
  • 制作java包

    我的 Java 类组织变得有点混乱 所以我要回顾一下我在 Java 学习中跳过的东西 类路径 我无法安静地将心爱的类编译到我为它们创建的包中 这是我的文件夹层次结构 com david Greet java greeter SayHello
  • 使用 AWS Java SDK 为现有 S3 对象设置 Expires 标头

    我正在更新 Amazon S3 存储桶中的现有对象以设置一些元数据 我想设置 HTTPExpires每个对象的标头以更好地处理 HTTP 1 0 客户端 我们正在使用AWS Java SDK http aws amazon com sdkf
  • 使用 Flyway 和 Hibernate 的 hbm2ddl 在应用程序的生命周期中管理数据库模式

    我正在开发 Spring Hibernate MySql 应用程序 该应用程序尚未投入生产 我目前使用 Hibernatehbm2ddl该功能对于管理域上的更改非常方便 我也打算用Flyway用于数据库迁移 在未来的某个时候 该应用程序将首
  • 将 JSON 参数从 java 发布到 sinatra 服务

    我有一个 Android 应用程序发布到我的 sinatra 服务 早些时候 我无法读取 sinatra 服务上的参数 但是 在我将内容类型设置为 x www form urlencoded 之后 我能够看到参数 但不完全是我想要的 我在
  • 如何在 Maven 中显示消息

    如何在 Maven 中显示消息 在ant中 我们确实有 echo 来显示消息 但是在maven中 我该怎么做呢 您可以使用 antrun 插件
  • 运行 Jar 文件时出现问题

    我已将 java 项目编译成 Jar 文件 但运行它时遇到问题 当我跑步时 java jar myJar jar 我收到以下错误 Could not find the main class myClass 类文件不在 jar 的根目录中 因
  • 将 JTextArea 内容写入文件

    我在 Java Swing 中有一个 JTextArea 和一个 提交 按钮 需要将textarea的内容写入一个带有换行符的文件中 我得到的输出是这样的 它被写为文件中的一个字符串 try BufferedWriter fileOut n
  • 休眠以持久保存日期

    有没有办法告诉 Hibernate java util Date 应该持久保存 我需要这个来解决 MySQL 中缺少的毫秒分辨率问题 您能想到这种方法有什么缺点吗 您可以自己创建字段long 或者使用自定义的UserType 实施后User
  • java迭代器内部是如何工作的? [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我有一个员工列表 List
  • 中断连接套接字

    我有一个 GUI 其中包含要连接的服务器列表 如果用户单击服务器 则会连接到该服务器 如果用户单击第二个服务器 它将断开第一个服务器的连接并连接到第二个服务器 每个新连接都在一个新线程中运行 以便程序可以执行其他任务 但是 如果用户在第一个
  • Swagger/Openapi-Annotations:如何使用 $ref 生成 allOf?

    我正在生成 Rest 端点 包括添加OpenAPI Swagger对生成的代码进行注释 虽然它对于基本类型运行得很好 但我在自定义类方面遇到了一些问题 现在我有很多自定义类的重复架构条目 使用 Schema 实现 MyClass class

随机推荐

  • PHP 中将大写驼峰式命名法分解为大写驼峰式命名法

    现在 我正在通过分割 切片和内爆来实现这一点 exploded implode array slice preg split A Z ThisIsATest 1 exploded This Is A Test 更漂亮的版本 capital
  • 调用多个相互依赖的异步方法

    我正在寻找围绕调用多个异步方法的最佳实践 其中每个下一个方法都依赖于前一个方法返回的值 我正在尝试两种方法 1 https dotnetfiddle net waPL9L https dotnetfiddle net waPL9L publ
  • 如何让 apache 始终返回带有数据的代码 200 而不是 304?

    我希望 Apache HTTPD 通过 GET 返回带有资源请求数据的响应代码 200 而不是返回没有数据的响应代码 304 有人知道如何做到这一点吗 提前致谢 删除标头 将以下内容添加到 httpd conf 文件中
  • Android 上 java 的替代品 [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我刚刚给自己买了一部 Android 手机 我迫不及待地想开始在它上面编码 然而 我不是一个狂热的java粉丝 虽然我可以忍受这一点
  • FastAPI 表示缺少文件夹名称作为模块

    我有一个与 Pycharm 中的 FastAPI 和 uvicorn 相关的问题 我的项目具有以下结构 LearningPy
  • 如何在 Flutter 中向 TextFormField 添加静态单元(文本)?

    我目前有这个TextFormField带有提示文本 目标是在 TextFormField 内添加单位 无论用户是否正在键入 它应该看起来像这样 如何实现这一目标 另外 如何将值居中 这是我当前的 TextFormField 代码 TextF
  • Laravel 5 加密 - 给定的同一字符串有不同的值?

    我正在使用 Laravel 5 对于一个项目 其中一个租户是系统中存储的电子邮件必须加密 我正在使用 Laravel 5Crypt 立面 以及相关的encrypt and decrypt 方法 问题在于 即使给出相同的字符串 加密值似乎也不
  • removeChild 有时会删除整个跨度,有时则不会

    我正在为 iOS 开发一个富文本编辑器 它的大部分功能都可以工作 但遇到了无穷无尽的问题 以确保当用户开始输入时光标在视口中可见 我想出了一个新颖的方法 在光标位置插入一个跨度 滚动到该跨度 然后将其删除 如果跨度在屏幕上 我还没有开始滚动
  • 如何在 Xcode 中“折叠”(隐藏)部分源代码?

    在 Visual Basic Net 中我可以使用 Region identifier string End Region 在编辑器中 折叠 隐藏 部分源代码 我怎样才能在斯威夫特做到这一点 Eric D 的答案是完美的 如果你想标记一些区
  • Android studio 2.2 NDK配置错误

    我已经下载了 ndk 并开始为 Hello World 制作演示 用ref制作项目Android 工作室 NDK https developer android com studio projects add native code htm
  • 将数据框导出为因素

    R 新手 在这里发表的第一篇文章 这可能非常明显 但我一定错过了一些东西 导入了带有二进制依赖的 csv purchase read csv Desktop purchase csv stringsASfactors TRUE 现在我希望从
  • WinJS 中的文件到字节数组

    我正在用 JavaScript 修改一些 Windows 应用商店开发 但我似乎陷入了如何从二进制文件获取字节数组的困境 我在网上找到了几个示例 但它们似乎都只能以文本形式读取 而我的文件是图像 我像这样打开文件 Windows Stora
  • 如何在 Geb grails 中设置和拆卸功能测试数据

    我有许多正在工作 通过的功能geb spock 测试 每个测试都扩展了GebReportingSpec 这些测试正在使用所有从功能测试套件开头的BootStrap groovy 创建的测试数据来测试Web 应用程序 我想将测试数据创建移至每
  • 如何在 Windows 8 网络视图中禁用缩放

    我在应用程序中使用 Web 视图来显示外部托管的内容 但 Web 视图允许用户通过捏合手势进行缩放 我想禁用此功能 我在 webview 本身上找不到任何此类属性 并且我在视口元标记方面没有取得任何成功 例如 有没有办法做到这一点 我能够使
  • 在 C# 项目中添加新的命名空间

    我想向 C 项目添加一个新的命名空间 并且要在新创建的命名空间中添加一些类 当我右键单击 项目的解决方案 时 我没有找到任何添加新命名空间的链接 同样右键单击 项目命名空间 也是如此 如何向现有项目添加新的命名空间 每个命名空间中是否有必要
  • 限制复选框数量

    我有 20 个复选框 如果选择了 4 个复选框 我需要禁用 16 个复选框 我尝试从这个 jquery 代码开始 input type checkbox name cate checked each function 我需要的是 如果用户选
  • jQuery UI 手风琴问题

    I use the jQuery UI accordion widget and between every item I have some space The issue is that in IE 8 when you slide a
  • 稀疏数据/数据存储/数据库是什么意思?

    最近一直在阅读 Hadoop 和 HBase 并遇到这个术语 HBase 是一个开源 分布式 sparse 柱状店 他们所说的稀疏是什么意思 这有什么关系吗 稀疏矩阵 http en wikipedia org wiki Sparse ma
  • 迭代累积和,其中总和确定要添加的下一个位置

    我有一个 data table 如下 set seed 5 x lt data table x sample 1 20 15 gt x x 1 5 2 14 3 17 4 20 5 2 6 11 7 8 8 15 9 12 10 16 11
  • Maven 程序集:添加同一工件的不同版本

    我使用 Maven 程序集插件创建应用程序存档 我的 pom 中存在的所有依赖项都包含在内 没有任何问题 现在我需要包含同一工件的两个或多个版本 如果我在我的 pom 中放入