JAVA程序如何打jar和war问题解决

背景:

近期研究一个代码审计工具 需要jar包 jar太多了 可以将jar 打成war包

首先看下程序目录结构

pom.xml文件内容

复制代码
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>java</groupId>
    <artifactId>faker</artifactId>
    <version>1.0-SNAPSHOT</version>
    <dependencies>
        <dependency>
            <groupId>com.github.javafaker</groupId>
            <artifactId>javafaker</artifactId>
            <version>1.0.2</version>
        </dependency>
    </dependencies>
</project>

找到maven -project

点击lifecycle-clean

点击install

如何打印war包

将pom.xml文件添加如下内容

复制代码
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">

    <!-- 其他配置 -->
    <modelVersion>4.0.0</modelVersion>
    <groupId>com.example</groupId>
    <artifactId>user-app</artifactId>
    <version>1.0.0</version>
    <packaging>war</packaging> <!-- 设置项目打包类型为 WAR -->

    <!-- 依赖项 -->
    <dependencies>
        <dependency>
            <groupId>com.github.javafaker</groupId>
            <artifactId>javafaker</artifactId>
            <version>1.0.2</version>
        </dependency>
        <!-- 其他依赖项 -->
    </dependencies>

    <!-- 构建配置02981122655 -->
    <build>
        <plugins>
            <!-- Maven WAR 插件 -->
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-war-plugin</artifactId>
                <version>3.3.1</version>
                <configuration>

                        <!-- 允许缺少 web.xml -->
                        <failOnMissingWebXml>false</failOnMissingWebXml>
                        <!-- 其他配置 -->

                    <!-- 指定 webapp 目录 -->
                    <warSourceDirectory>src/main/webapp</warSourceDirectory>
                    <!-- 如果需要自定义 WAR 文件名,可以设置 warName -->
                    <!-- <warName>custom-war-name</warName> -->
                </configuration>
            </plugin>
        </plugins>
    </build>
</project>

终端执行

mvn clean package

问题: 找不到pom.xml

在pom.xml添加

<failOnMissingWebXml>false</failOnMissingWebXml>

即可成功

相关推荐
xys_6782 分钟前
深挖C语言:动态内存管理
c语言·开发语言
OPEN-F20 分钟前
Python进阶教程:项目工程化与虚拟环境
开发语言·python
吴声子夜歌21 分钟前
Java面试——基础
java·开发语言·面试
智码看视界42 分钟前
Day 56:AI辅助开发全面提效:Copilot + Cursor的Java开发
java·单元测试·copilot·cursor·后端开发·代码审查·ai辅助开发
asdfg12589631 小时前
一个例子理解Java中的函数式接口
java·函数式接口
toolsmith1 小时前
一个商业软件的License校验,居然把验签的证书放在了License文件里
java
wuminyu1 小时前
JDK21 FFM异步读取MSG_ZEROCOPY错误队列揭秘
java·linux·c语言·jvm·c++
存在morning1 小时前
【PySpark 学习笔记 三】DataFrame API 入门
android·java·数据库
AC赳赳老秦1 小时前
企业标签体系搭建:基于 OpenClaw 采集的多维度公开数据,构建企业画像标签库
java·运维·服务器·python·信息可视化·deepseek·openclaw
智嵌研习社1 小时前
Ollama 本地大模型完全配置指南:Modelfile 参数与系统环境变量深度解析
java·开发语言