maven打war包

maven打造可执行war包 本次是采用内嵌jetty来运行一个web项目涉及到的war包打包问题。 尝试了多种方法,以下两种方法都可以完成打包,第一种方法我并没有成功运行起来,但是参考其他博主是可以实现的,因此在这里做一个记录。 方法一: 该方法主要是利用maven-war-plugin、maven-antrun-plugin插件来实现的,参考的是 https://blog.youkuaiyun.com/u013668852/article/details/69566947 过程不细说了,贴几个图以备后续查看 1.利用maven-wa 阅读详情

maven打包

1 . maven打jar包(Spring Framework)

1.1 插件使用

maven-resources-plugin(资源插件),maven-compiler-plugin(编译项目),maven-jar-plugin(将项目打成jar包),maven-assembly-plugin(将所有依赖打成jar包)。使用maven-assembly-plugin容易产生一个错误,就是在多个依赖冲突的时候无法解决。不过使用 maven-shade-plugin 生成一个 uber-jar,可以解决依赖间的冲突,适用于Spring Framework。

配置 maven-shade-plugin

<plugins>  
    <plugin>  
        <groupId>org.apache.maven.plugins</groupId>  
        <artifactId>maven-shade-plugin</artifactId>  
        <version>2.4.1</version>  
        <executions>  
            <execution>  
				<!-- 将goal shade:shade 绑定到 phase package 上,绑定后执行mvn package即可 -->
                <phase>package</phase>  
                <goals>  
                    <goal>shade</goal>  
                </goals>  
                <configuration>  
                    <transformers>  
                        <transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">  
                            <mainClass>com.xxg.Main</mainClass>  
                        </transformer>  
                        <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer"> 
                            <resource>META-INF/spring.handlers</resource>  
                        </transformer>  
                        <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer">  
                            <resource>META-INF/spring.schemas</resource>  
                        </transformer>  
                    </transformers>  
                </configuration>  
            </execution>  
        </executions>  
    </plugin>  
</plugins>  

配置完成后,执行mvn package即可打包。生成的jar文件包含了所有依赖,所以可以直接运行。

<transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer"> 
      <resource>META-INF/spring.handlers</resource>  
</transformer>  
<transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer">  
      <resource>META-INF/spring.schemas</resource>  
</transformer> 

这里的AppendingTransformer的作用是:在Spring Framework中会将多个依赖打到一个jar中,每个jar都会包含spring.handlers和spring.schemas文件,如果生成一个jar包文件会互相覆盖,运行时就会出现XML schema文件出错。为了避免互相影响,使用AppendingTransformer来对文件内容追加合并.

2 . maven打war包

2.1 插件使用

打war时需要maven-resources-plugin(资源插件),maven-compiler-plugin(编译项目),maven-war-plugin插件

maven-war-plugin配置

<plugin>
     <artifactId>maven-war-plugin</artifactId>
     <version>3.2.0</version>
     <configuration>
          <failOnMissingWebXml>false</failOnMissingWebXml>
     </configuration>
</plugin>

不想打进war包的jar的配置

<build>
<filters>
    <!-- 过滤文件,通常是一个属性文件(名值对的形式) -->
    <filter>src/main/webapp/META-INF/auto-config.properties</filter>
</filters>
<finalName>communitytag</finalName>
<plugins>
    <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-war-plugin</artifactId>
        <version>2.1-alpha-1</version>
        <configuration>
			<!-- 不想打进war包的xxx.jar的配置 -->
            <warSourceExcludes>*/lib/xxx.jar</warSourceExcludes>
            <webResources>
                <resource>
                    <!-- 元配置文件的目录,相对于pom.xml文件的路径 -->
                    <directory>src/main/webapp/WEB-INF</directory>
                    <!-- 是否过滤文件,也就是是否启动auto-config的功能 -->
                    <filtering>true</filtering>
                    <!-- 目标路径 -->
                    <targetPath>WEB-INF</targetPath>
                </resource>
            </webResources>
        </configuration>
    </plugin>
</plugins>
</build>

3 . idea中maven打war包(多种方式)

单个执行指令先clean->package
在这里插入图片描述

Build Artifacts
在这里插入图片描述

maven打造可执行war包(超详细) 在开发java Web时,有时我们会使用嵌入式jetty来运行,项目完成后,如果能够直接运行war包从而启动jetty来运行war包那就非常完美了,本文将讲解如何在maven项目中整合jetty 9,并构造可执行的war包(打包前和打包后都能随时启动)。 阅读详情

相关推荐

使用maven-war-plugin插件合并maven项目多个war包

在一个大项目中拆分maven工程时,很有可能会把js、css、jsp等文件放在不同的工程里(根据业务模块划分)。因为如果都集中在一个maven webapp里,那么这个maven webapp会太大,而且在业务上也比较分散 但是这些持有js、css、jsp的maven工程,如果packaging设置为jar是不合适的,因为外围要读取内部的这些文件就会很困难。在这种场景下,一个很自然的想法就是打成...

盛夏与微风 1412

maven项目打包成war包并部署到tomcat上

maven项目打包成war包并完成部署

hzb666666666的博客 1万+

使用Maven打出瘦版的WAR包

我们在生产环境上部署Web应用时,可能把想把Web应用依赖的jar包都放在容器的类路径下,不打到War包中,这样,升级时,不用上传很大的文件了(还可能有别的考虑)。打出这种瘦版的War包,需要使用maven war plugin,参考: http://maven.apache.org/plugins/maven-war-plugin/examples/skinny-wars.html

码出个天下——程序员的自我修养 2073

eclipse maven 打war包的几种方式

第一种:利用pom.xml文件打包。 右键pom.xml文件,选择Debug as或Run as 都行。但需要选择Maven install  打包  执行成功后,日志会打印出位置(看自己配置是否日志输出)。如果没有输出,在默认的C盘.m2文件夹中     第二种方式:右键项目。选择Debug as 或 Run as 。但是这个时候要选择 Debug configurations...

weixin_34293246的博客 857

如何使用Maven将WAR文件部署到Tomcat服务器中?一文带你搞定!

本文介绍如何使用Maven将WAR文件部署到Tomcat服务器中。我们将会使用Tomcat Maven插件进行部署。首先,我们需要添加Tomcat Maven插件到项目中,并在插件配置中指定Tomcat服务器的地址、用户名和密码。最后,我们可以通过Maven命令来编译项目并将WAR文件部署到Tomcat服务器中。本文介绍了如何使用Maven将WAR文件部署到Tomcat服务器中,通过添加Tomcat Maven插件并在插件配置中指定Tomcat服务器的地址、用户名和密码等信息来完成部署。

**My Coding Family** 1283

Python实战:5分钟搞定抖音无水印视频下载(附完整代码)

本文系统介绍了抖音无水印视频下载的多种技术方案,重点解析了抖音视频的获取逻辑与去水印原理。文章提供了从零代码的浏览器插件到可编程的Python脚本的完整实现路径,并附带了详细的代码示例,帮助用户快速构建自己的抖音视频下载工具箱。

weixin_29089057的博客 842

maven项目打war包

maven项目打war包 原文: https://www.cnblogs.com/huahua035/p/7808176.html 1.添加war包标志 <packaging>war</packaging> 2.添加插件 <build> <finalName>${project.artifactId}</finalName> <plugins> <plugin>

yuanpeij的博客 3683

保姆级教程:用LoRA微调Chinese-Mistral-7B模型,并一键部署到Ollama(附完整代码)

本文提供了一份详细的LoRA微调Chinese-Mistral-7B模型的保姆级教程,涵盖环境配置、数据预处理、微调实战、模型量化及Ollama部署全流程。通过实战案例和完整代码,帮助开发者快速构建专属中文大模型,适用于医疗、法律等垂直领域。

weixin_30369041的博客 249

maven合并war包

在使用Maven分模块进行开发时,模块间必然存在相互依赖的关系

张张张小胜的博客 934

【遥感数字图像处理(朱文泉)】各章博文链接汇总及思维导图

遥感数字图像处理(北京师范大学朱文泉教授)课程各章博文笔记汇总,及各章节思维导图

甜子yu的博客 2621

3个国产AI大模型实战:如何用DeepSeek+豆包+千问批量生成高质量测试用例(附完整代码)

本文详细介绍了如何利用DeepSeek、豆包和千问三大国产AI大模型批量生成高质量测试用例的实战方法。通过Python环境配置、多模型SDK安装和统一接口封装,实现高效测试用例生成,并结合结构化提示词设计和多模型结果对比分析,显著提升测试效率和覆盖率。

weixin_29197699的博客 707

maven本地jar包打入war包

maven本地jar包打入war包 1.添加依赖2.资源扫描 ) 有时需要将本地的jar包打包到war中已实现一些功能,尝试了两种方式将本地jar包打入war包。 1.添加依赖 添加dependency,配置scope为system 以及jar所在的路径 <dependency> <groupId>com.sun</groupId> ...

changyayun的博客 1080

IEC 62056协议栈深度拆解:从物理层握手到应用层AARQ,一次完整的DLMS通讯抓包分析

本文深入解析IEC 62056协议栈(DLMS/COSEM)的全流程通信机制,从物理层握手到应用层AARQ建立,提供详细的抓包分析和实战指南。涵盖RS-485配置、HDLC帧解析、OBIS编码解读等核心内容,并附有常见故障排查技巧,助力开发者高效实现电能表数据采集。

weixin_29182481的博客 311

maven 打jar包和war包

( 最简单的:修改pom.xml文件: <packaging>war</packaging>(如果是jar,则是<packaging>jar</packaging>); 然后右击项目"run"执行“maven install” )...

diaojinxun8373的博客 404

Cartographer实现双雷达建图

TRAJECTORY_BUILDER_2D.num_accumulated_range_data = 2 --执行一次前端匹配需要的激光扫描分段数量。关于num_subdivisions_per_laser_scan。num_laser_scans =2,--订阅激光扫描话题数量。Frame改为 前雷达laser_1 后雷达laser_2。雷达的话题由scan改为,前scan_1 后scan_2。有些人说需要改成2,但我这里改成2反而不行,1才可以。

Studying…… 1261

【LLM】大模型幻觉问题的原因和缓解方法

一、幻觉定义 备注(下面提及的两个名词): Faithfulness:是否遵循input content; Factualness:是否符合世界知识; 传统nlp任务重,幻觉大多数是faithfulness,比如Intrinsic Hallucination(冲突),摘要内容和document内容有冲突;再比如Extrinsic Hallucination(无中生有),生成内容中包含input要求的其他杂七杂八虚假信息;但LLM应该考虑的幻觉Factualness,因为数据源是Open-doman的世界知

发现问题,并解决问题,批判性思维 1万+

Maven打包war包和jar包

1)Maven打包war包和jar包 因为要部署项目所以学了一下jar包和war包 使用Maven打包很方便,只需要一步 右击install,点击运行 自己打包的war包就会出现在target下面 如果想打包jar包只需要改一下pom.xml文件即可 这里改为jar就可以打包jar包了 2)Maven中package和install的区别 mvn clean pa...

南方硅人的博客 1934

第一章 电力电子仿真软件 PLECS简介

PLECS是瑞士Plexim公司开发的电力电子仿真软件,具有快速仿真、丰富元件库和热分析功能。软件提供单机版和嵌入MATLAB的版本,支持多平台安装且流程简单。首次运行需获取授权文件,提供60分钟演示模式。界面包含模型创建、帮助文档和元件库浏览器等功能区域,操作便捷。该软件是专业高效的电力电子系统仿真工具。

493

maven 自动构建jar/war包

需求: 用maven打包依赖时,把自定义的lib目录的jar文件打包到war包里面的WEB-IINFO/lib下面 ( 也就是自定义lib目录的jar包和maven配置的dependency的jar都放在项目根目录下的WEB-IINFO/lib) 配置pom.xml <dependencies> .... </dependencies> <packagin...

eyeofeagle的博客 3578

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

SpringBootWebProject学习4、maven打war包

SpringBootWebProject学习4、maven打war包

红目香薰 1398

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

Maven工程下打War包

1、配置pom.xml文件配置工程目录下的pom.xml文件 <profile> <id>development</id> <properties> <package.environment>resources</package.environment> </properties

潇湘申的博客 6359

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

采用maven方式把项目打成war包

Maven打war包配置以及注意事项更改IDEA配置更改Pom.xml文件最后运行mave打包以上就是maven打包的全过程,如有问题,请在下方留言。 更改IDEA配置 第1步: 首先Ctrl+Alt+S 打开settings,依次打开Build,Excxecution --&gt; Complier 然后点击 JavaComplier,根据图依次操作: 第2步: 点击项目,鼠标右键然后按F4...

会写代码的斯皮尔伯格 2840

maven打war包到指定的目录下

maven打war包到指定的目录下情景描述:项目console是一个web项目有多个模块,现在为这个项目新建一个模块build.console用来编译构建。 对console项目mvn clean package后生成war包不放在默认的target目录下面。而是放在编译模块build.console的dist目录下面。 初步解决方法: maven中更改target目录可以用子目录,但是只能是

BeAnHonester的专栏 7549

Maven 打包 jar、war 包配置

【代码】Maven 打包 jar、war 包配置。

龚小帅的博客 1345

Maven项目如何打war包?

这是maven项目的标准目录结构。1、  导出war包方法1:在eclipse中右键export-war file导出war包方法2:将项目maven install之后,到项目的路径下的target中直接找到项目的war包。方法1产生的war包会多出一些额外的jar包,导致出错。所以应该使用方法2.待续。。。

冷血之心的博客 2万+

Maven导war包

工作之余学习了搭建maven工程,导出war包时却是各种错误层出不穷!下面就分享下我导出war包的过程! 方法一:纯手动导出 首先要把项目整理好,然后去打war包 1、右键项目名,选择Maven4MyEclipse,选择Update Project Configuration 在弹出的窗口中直接点击ok即可,如下图所示 2、clean up项目(如下图所示)

林小米的博客 4472
上一篇: JQuery
下一篇: spring
liuzhuojava
博客等级 码龄9年 22粉丝 6原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值