使用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包。

相关推荐
张哈大8 分钟前
MCP:重塑AI工具调用的统一标准,告别重复造轮子的时代
人工智能·python·ai·prompt
极光代码工作室9 分钟前
基于深度学习的智能图像识别平台
python·深度学习·机器学习·ai·系统设计
copyer_xyf14 分钟前
Python 文件基本操作
前端·后端·python
嘶哈哈哈16 分钟前
# SolidWorks 启动提示“无法获得下列许可 SOLIDWORKS Standard”的解决思路
python
zh路西法22 分钟前
【rosbridge-websocket】跨网络的ROS1与ROS2通讯法(上)
linux·网络·c++·python·websocket·网络协议
圆弧YH23 分钟前
python→ Language
python
装不满的克莱因瓶25 分钟前
掌握神经网络的模型结构
人工智能·python·深度学习·神经网络·机器学习·ai
稷下元歌26 分钟前
7天学会plc加机器视觉关于运动控制部份,配套视频在bib
开发语言·c++·git·vscode·python·docker·pip
奋斗的小方27 分钟前
Java进阶篇1-1:异常
java·开发语言·python
颜酱30 分钟前
LangChain 调大模型:模板拼接 + invoke / stream / batch
python·langchain