SpringBoot如何打包自定义生成的包名

 更新时间:2023年06月20日 09:15:08   作者:HuanBuXingDeXingXing  
这篇文章主要介绍了SpringBoot如何打包自定义生成的包名问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

SpringBoot打包自定义生成的包名

pom.xml中,在build标签中加入如下标签即可

    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
        <!-- 自定义打包的包名称 -->
        <finalName>singleRedis</finalName>
    </build>

效果:

SpringBoot自定义静态jar包,并在打包时打包自定义包

场景说明

在开发中,有时需要引入自有定义的jar包(比如:公司内自有的公共模块),而公司又没有搭建私有 maven 仓库。

引入自定义包有一下几种方式:

将自定义包导入开发者电脑的maven仓库,再像其他包的引用方式引入到项目中

这种方式有明显的不方便之处:所有开发者都要先获取到此自定义的包,并按指定的名称导入到自己的maven仓库中。

引入自定义包命令示例如下:

mvn install:install-file -Dfile=D:\ojdbc7.jar -DgroupId=com.tech4j.driver -DartifactId=oracle-connector-java -Dversion=12.1 -Dpackaging=jar

将自定义包放在项目源码里

这种方式会使项目源码体积变大,但所有人开发者不需要做特殊处理,获取到代码可以直接运行。

本文主要对方式二进行说明。

配置说明

1、引入自定义包

1)将自定义包放在项目中,假设放在 /resources/lib 目录下,文件名为:xxxx-1.0.jar。

2)配置 pom.xml 文件,引入自定义的文件:

<dependency>
    <groupId>xxxx</groupId>
    <artifactId>xxxx</artifactId>
    <version>1.0</version>
    <systemPath>${basedir}/src/main/resources/lib/xxxx-1.0.jar</systemPath>
    <scope>system</scope>
</dependency>

至此,就可以正常使用 xxxx-1.0.jar包了。

2、配置打包时包含自定义包

到目前为止,开发是没有问题,但是通过命令 mvn package 打包后,会发现打包后的 BOOT-INF\lib(war打包方式在 WEB-INF/lib-provided 目录下) 下并没有包含我们引入的自定义包。

在 pom.xml 加入以下配置:

<configuration>
    <includeSystemScope>true</includeSystemScope>
</configuration>

详细配置如下:

<plugin>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-maven-plugin</artifactId>
    <configuration>
        <includeSystemScope>true</includeSystemScope>
     </configuration>
</plugin>

再次打包时,就可看到新打的包中包含自定义包。

总结

 以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • @Resource和@Autowired两个注解的区别及说明

    @Resource和@Autowired两个注解的区别及说明

    这篇文章主要介绍了@Resource和@Autowired两个注解的区别及说明,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-06-06
  • Java同步框架AbstractQueuedSynchronizer详解

    Java同步框架AbstractQueuedSynchronizer详解

    本篇文章主要介绍了Java同步框架AbstractQueuedSynchronizer详解,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-10-10
  • SpringBoot中注册Bean的10种方式总结

    SpringBoot中注册Bean的10种方式总结

    在Spring Boot应用中,Bean是构成应用的核心组件,Spring容器负责管理这些Bean,包括它们的创建、配置、组装、管理和销毁,在Spring Boot中,有多种方式可以注册Bean,本文将详细介绍这些不同的注册方式,并给出相应的示例代码和适用场景,需要的朋友可以参考下
    2024-08-08
  • 使用EasyPoi实现多Sheet页导出的示例代码

    使用EasyPoi实现多Sheet页导出的示例代码

    在项目开发中,我们常常会遇到导出多Sheet页的需求,本文降维打击介绍一下如何使用EasyPoi实现这一功能,文中的示例代码简洁易懂,有需要的可以参考下
    2025-03-03
  • 详谈java命令的本质逻辑揭秘

    详谈java命令的本质逻辑揭秘

    一个简单的java命令背后究竟做了些什么事情,很多朋友提出几个问题,下面带领大家一起学习Java命令的本质逻辑问题,感兴趣的朋友跟随小编一起看看吧
    2021-05-05
  • 一文详解Spring构造函数推断

    一文详解Spring构造函数推断

    这篇文章主要介绍了Spring构造函数推断自动注入及底层原理详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加
    2023-04-04
  • 关于mybatis3中@SelectProvider的使用问题

    关于mybatis3中@SelectProvider的使用问题

    这篇文章主要介绍了mybatis3中@SelectProvider的使用技巧,@SelectProvide指定一个Class及其方法,并且通过调用Class上的这个方法来获得sql语句,本文通过实例代码给大家介绍的非常详细,需要的朋友可以参考下
    2021-12-12
  • IDEA如何搭建Struts2项目

    IDEA如何搭建Struts2项目

    这篇文章主要介绍了IDEA如何搭建Struts2项目,文中通过图文介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2018-02-02
  • 全面了解Java中的内部类和匿名类

    全面了解Java中的内部类和匿名类

    下面小编就为大家带来一篇全面了解Java中的内部类和匿名类。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-07-07
  • Java 数据结构算法Collection接口迭代器示例详解

    Java 数据结构算法Collection接口迭代器示例详解

    这篇文章主要为大家介绍了Java 数据结构算法Collection接口迭代器示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-09-09

最新评论