使用maven打jar包时,如何只把依赖的其它jar中的类打进jar包,没有依赖的其它jar包的类文件不打进来?

简介

使用Maven打包时,默认情况下,所有依赖的jar包都会被打包到生成的jar文件中。
如果只想将依赖的其他jar中的类文件打进来,而不包含其它jar包,可以使用Maven的 maven-shade-plugin插件进行配置。

步骤

以下是一个示例配置,将只打包依赖的其他jar中的类文件:

1. 在pom.xml文件中添加maven-shade-plugin插件的配置:

XML 复制代码
<build>
  <plugins>
    <plugin>
      <groupId>org.apache.maven.plugins</groupId>
      <artifactId>maven-shade-plugin</artifactId>
      <version>3.2.4</version>
      <executions>
        <execution>
          <phase>package</phase>
          <goals>
            <goal>shade</goal>
          </goals>
          <configuration>
            <filters>
              <filter>
                <artifact>*:*</artifact>
                <includes>
                  <include>**/*.class</include>
                </includes>
              </filter>
            </filters>
          </configuration>
        </execution>
      </executions>
    </plugin>
  </plugins>
</build>

2.运行mvn package命令进行打包。

这样,生成的jar文件将只包含依赖的其他jar中的类文件,而不包含其他jar包。

相关推荐
汤米粥4 小时前
后端开发主流技术方案
java·python·golang·php·nodejs·后端开发
我的xiaodoujiao4 小时前
Django 基础知识详细图文教程 13-Django 模型定义与使用 3
数据库·后端·python·测试工具·oracle·django
小静AI工程实验室4 小时前
robots.txt 不是门禁:RFC 9309 规则、缓存与 Python 爬虫的 10 个边界
爬虫·python·缓存
沉下心来学鲁班4 小时前
DeepAgents 记忆机制:让 AI Agent 拥有“跨对话“的记忆
服务器·人工智能·python
Helix2504 小时前
Python与其他编程语言优劣势对比:2026初学者选型指南
java·python·教程·编程语言·入门·初学者编程选型
零基础1235 小时前
深度强化学习驱动的 Agent 后训练:原理、实践与前沿路线
人工智能·python·机器学习
I Am a robert girl5 小时前
PhysStream 源码级拆解:流式视频生成如何做到“边生成边控制“
python·音视频·源码解析·视频生成·可控生成·流式生成·物理控制
高洁015 小时前
数字孪生驱动大模型工业知识库
人工智能·python·深度学习·机器学习·transformer
RS迷途小书童5 小时前
Python+FFmpeg提取大疆无人机MP4内嵌mov_text遥测SRT字幕并做完整性校验
python·ffmpeg·大疆·srt字幕·dji