首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

多模块Maven和Spring Boot项目不会为辅助模块生成fat可执行jar

在多模块Maven项目中,通常会将项目拆分为多个模块,每个模块负责不同的功能或组件。而Spring Boot是一个用于快速构建独立的、基于Spring框架的应用程序的工具。

当我们构建一个多模块Maven项目时,通常只需要为主模块生成可执行的fat jar文件,而辅助模块则不需要生成可执行的jar文件。这是因为辅助模块通常是被主模块所依赖的,它们的功能是被主模块调用和使用的,而不需要独立运行。

为主模块生成可执行的fat jar文件可以通过配置Maven插件来实现。在主模块的pom.xml文件中,我们可以使用spring-boot-maven-plugin插件来打包可执行的jar文件,并将所有依赖的类库打包到该jar文件中。这样,我们就可以通过运行该jar文件来启动Spring Boot应用程序。

对于辅助模块,我们可以将其打包为普通的jar文件,而不需要生成可执行的fat jar。这可以通过在辅助模块的pom.xml文件中配置maven-jar-plugin插件来实现。

总结起来,多模块Maven和Spring Boot项目不会为辅助模块生成fat可执行jar,只需要为主模块生成可执行的fat jar即可。这样可以更好地组织和管理项目的结构,并且减少不必要的打包和部署过程。

腾讯云相关产品和产品介绍链接地址:

  • 腾讯云容器服务(Tencent Kubernetes Engine,TKE):https://cloud.tencent.com/product/tke
  • 腾讯云云服务器(CVM):https://cloud.tencent.com/product/cvm
  • 腾讯云对象存储(COS):https://cloud.tencent.com/product/cos
  • 腾讯云数据库(TencentDB):https://cloud.tencent.com/product/cdb
  • 腾讯云人工智能(AI):https://cloud.tencent.com/product/ai
  • 腾讯云物联网(IoT):https://cloud.tencent.com/product/iot
  • 腾讯云区块链(Blockchain):https://cloud.tencent.com/product/baas
  • 腾讯云视频处理(VOD):https://cloud.tencent.com/product/vod
  • 腾讯云音视频通信(TRTC):https://cloud.tencent.com/product/trtc
  • 腾讯云元宇宙(Metaverse):https://cloud.tencent.com/product/metaverse
页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

  • SpringBoot打包部署解析:jar包的生成结构

    默认情况下创建的 Spring Boot项目是采用 jar 包形式,如果项目需要 war 包,可通过修改配置打成 war 包。 本章我们将围绕 jar war 包的运作原理及相关操作进行讲解。...本节从 jar 包的生成、结构、运作原理来分析 Spring Boot的实现。 jar包的生成 Spring Boot可执行 jar 包又称作 fat jar”,是包含所有三方依赖的 jar。...它与传统 jar 包最大的不同是包含了一个 lib 目录内嵌了 web 容器(以下均以 tomcat 例)。 jar 包通 常是由集成在 pom.xml 文件中的 maven 插件来生成的。...spring-boot-maven-plugin 的 repackage 能够将 mvn package 生成的软件包,再次打包可执行的软件包,并将 mvn package 生成的软件包重命名为*.original...source = getSourceArtifact(); //最终可执行 jar,即 fat jar File target = getTargetFile(); //获取重新打包器,将 maven

    1.7K30

    Spring boot2 项目相关

    1、首先通过Idea创建一个Maven项目,参考IDEA Maven父子项目操作(不是微服务架构,所以参考子项目的创建即可). 2、修改pom.xml 导入spring boot2相关的依赖 (1)...   注:spring boot提供了若干场景启动器,命名规则spring-boot-starter-*,类似abp的组合模块,方便快速开发 <dependency...可以看到properties节点下面定义了很多Maven自定义属性,这个属性就是控制spring-boot引入的工具包的版本,如下:  这其实就是maven父子项目依赖管理的方式,参考Maven 父子项目...运行访问均成功. 8、创建可执行jar包并部署 类似netcore的单文件部署 Spring boot提供了fat jar的概念,打包了tomcat相关运行时方便快速发布,修改pom.xml新增如下节点...操作idea或者命令行执行mvn clean packeage执行打包操作  打包成功会在target目录(类似netcore项目的bin)生成一个jar包,cmd定位到包目录,执行如下代码:

    16920

    公司的这种打包启动方式,我简直惊呆了!

    1. spring-boot-maven-plugin 该插件是spring boot官方提供的一个打包插件,主要用来打出fat jar,并且提供了支持java -jar xxx.jar方式启动。...官网地址:https://docs.spring.io/spring-boot/docs/current/maven-plugin/reference/htmlsingle/。...Spring Boot 可执行 jar 的主要入口点;关注公众号:码猿技术专栏,回复关键词:1111 获取阿里内部的java性能调优手册;它是 Spring Boot jar 文件中的实际 Main-Class...,用于设置适当的 URLClassLoader 并最终调用Spring Boot项目中定义的 main()方法。...总结 这种打包启动方式虽然不常见,但是还是有一定的价值的,特别是在项目组件模块比较多的时候,出现紧急缺陷,可以按需替换包,将影响范围控制到最小。

    43020

    springboot第3集:springboot中创建多个模块创建,关联,后续如何打包呢

    使用maven profiles来管理不同的环境 模块Spring Boot应用程序通常在不同的环境中运行,如开发环境、测试环境生产环境。.../target/my-project-web-1.0.0-SNAPSHOT.jar打包后的可执行jar包路径。...将一个Spring Boot模块项目改造成模块项目的过程,大致可以分为以下几个步骤: 分析项目结构依赖关系 首先,需要分析单模块项目中的代码依赖关系,将其拆分成若干个模块。...在所有子项目的pom.xml文件中添加必要的插件(例如,Mavenspring-boot-maven-plugin),并使用构建工具编译、打包运行子项目。...可以使用聚合父项目来一次性编译、打包运行所有子项目。 部署 在所有子项目成功运行测试后,使用构建工具将各个子项目打成可执行jar或war包或者直接部署在应用服务器上。

    1K31

    公司的这种打包启动方式,我简直惊呆了!

    大家好,我是不才陈某~大家都知道,SpringBoot应用最终会打出一个Fat Jar, 里面包含了用到的全部依赖,启动也非常简单,java -jar xxx.jar即可。...1. spring-boot-maven-plugin该插件是spring boot官方提供的一个打包插件,主要用来打出fat jar,并且提供了支持java -jar xxx.jar方式启动。...官网地址:https://docs.spring.io/spring-boot/docs/current/maven-plugin/reference/htmlsingle/。...Spring Boot 可执行 jar 的主要入口点,它是 Spring Boot jar 文件中的实际 Main-Class,用于设置适当的 URLClassLoader 并最终调用Spring Boot...总结这种打包启动方式虽然不常见,但是还是有一定的价值的,特别是在项目组件模块比较多的时候,出现紧急缺陷,可以按需替换包,将影响范围控制到最小。

    97270

    企业都在用的 spring boot 打包插件,真的超好用!

    但是这次,有一个模块项目,我负责其中一个模块的开发,开发完成之后,发现打的包直接执行报找不到主类,这就有点奇怪了,所以就有了这篇文章。...阶段,进行 Spring Boot 应用生命周期的管理 打出来的可执行 jar 包,目录结构: ?...其中 BOOT-INF 主要是一些启动信息,包含 classes lib 文件,classes 文件放的是项目生成的 class 字节文件配置文件,lib 文件是项目所需要的 jar 依赖。...Springboot-Boot-Classes Spring-Boot-Lib 指向的是生成BOOT-INF 下的对应位置。...四、总结 1、如果需要打成可执行 jar 包的话,可以使用 spring boot 的打包插件:spring-boot-maven-plugin 。

    1.7K10

    Spring Boot系列 – 1. 简介

    Spring Boot简化Spring项目配置而生,使用它使得jar依赖管理以及应用编译部署更为简单。...使用Spring Boot,只需20行左右的代码即可生成一个基本的Spring Web应用,并且内置了tomcat,构建的fat Jar包通过Java -jar就可以直接运行。 ...如下特性使得Spring Boot非常契合微服务的概念,可以结合Spring BootSpring CloudDocker技术来构建微服务并部署到云端: 一个可执行jar即为一个独立服务 很容易加载到容器...3.可执行jarSpring Boot默认将应用打包成一个可执行jar包文件,构建成功后使用java -jar命令即可运行应用。 ...下面简单介绍以下各模块。 1. spring-boot 主库,其他模块提供特性支持。包括以下内容:  SpringApplication类,提供静态方法,方便编写独立运行的Spring应用。

    73720

    公司的这种打包启动方式,我简直惊呆了

    前言 如果本文对你有帮助的话,球球帮忙投个票吧,投票通道 感激不尽呀~~ 大家都知道,SpringBoot应用最终会打出一个Fat Jar, 里面包含了用到的全部依赖,启动也非常简单,java -jar...spring-boot-maven-plugin 该插件是spring boot官方提供的一个打包插件,主要用来打出fat jar,并且提供了支持java -jar xxx.jar方式启动。...官网地址:docs.spring.io/spring-boot…。 我们需要用这个插件,因为只有它可以打出支持启动的jar,但是打出的包中又不能有依赖,该怎么做呢?...Spring Boot 可执行 jar 的主要入口点,它是 Spring Boot jar 文件中的实际 Main-Class,用于设置适当的 URLClassLoader 并最终调用 Spring Boot...总结 这种打包启动方式虽然不常见,但是还是有一定的价值的,特别是在项目组件模块比较多的时候,出现紧急缺陷,可以按需替换包,将影响范围控制到最小。

    54110

    SpringBoot 部署 Jar 文件,瘦身优化指南 !

    本文内容包括: 如何把一两百MB的单一Spring Boot jar文件,分离依赖组件lib目录一个业务jar来进行部署,优化单个jar文件大小到一两百KB。。...但是实际项目中需要把这些定义只放到spring boot模块项目(可优化使用pluginManagement形式),避免干扰其他util、common等模块项目 --> <plugins...但是实际项目中需要把这些定义只放到spring boot模块项目(可优化使用pluginManagement形式),避免干扰其他util、common等模块项目 --> <plugins...但是实际项目中需要把这些定义只放到spring boot模块项目(可优化使用pluginManagement形式),避免干扰其他util、common等模块项目 --> <plugins...微服务jar文件中的META-INFO/MANIFEST文件中会生成根据模块依赖组件列表的Class-Path属性, 从而避免了不同版本jar: Class-Path: lib/spring-boot-starter-web

    1.4K40

    SpringBoot要和我比瘦身,你怎么看

    本文内容包括: 如何把一两百MB的单一Spring Boot jar文件,分离依赖组件lib目录一个业务jar来进行部署,优化单个jar文件大小到一两百KB。。...但是实际项目中需要把这些定义只放到spring boot模块项目(可优化使用pluginManagement形式),避免干扰其他util、common等模块项目 --> <plugins...但是实际项目中需要把这些定义只放到spring boot模块项目(可优化使用pluginManagement形式),避免干扰其他util、common等模块项目 --> <plugins...但是实际项目中需要把这些定义只放到spring boot模块项目(可优化使用pluginManagement形式),避免干扰其他util、common等模块项目 --> <plugins...微服务jar文件中的META-INFO/MANIFEST文件中会生成根据模块依赖组件列表的Class-Path属性, 从而避免了不同版本jar: Class-Path: lib/spring-boot-starter-web

    78810

    Spring Boot应用的打包部署

    一、创建基于Spring Boot框架的可执行JarSpring Boot开发的应用可以打包单独的JAR包,然后通过java -jar .jar命令运行。...接下来我们基于之前练习使用的应用程序,看看如何构建Spring Boot Uber JAR。...运行Jar启动Java web应用 分析 如上所示,打包成可执行jar包这种方法相当直观,背后的工作由spring-boot-maven-plugin插件实现:先通过maven-shade-plugin...生成一个包含依赖的jar,再通过spring-boot-maven-plugin插件把spring boot loader相关的类,还有MANIFEST.MF打包到jar里。...总结下Spring Boot应用的启动流程:(1)spring boot应用打包之后,生成一个fat jar,里面包含了应用依赖的jar包,还有Spring boot loader相关的类;(2)Fat

    64930
    领券