打包时如何把本地jar包依赖也打进项目war包里

》描述:已知下面是引用本地jar包依赖进项目的一种方式,但是这样只在本地运行有用,并不能将本地jar包打进项目war里面

bash 复制代码
<scope>system</scope>
<systemPath>${pom.basedir}/lib/xxx.jar</systemPath>

解决:这段代码放在 Maven 项目的 pom.xml 文件中。具体来说,它应该放在 <build> 标签内的 <plugins> 标签内的 <plugin> 标签内的 configuration 标签内

bash 复制代码
<webResources>
    <resource>
        <!-- 指向的是包含所有要用 jar 包的目录 -->
        <directory>${project.parent.basedir}/sys-common/pack_lib</directory>
        <!-- 编译后要把这些 jar 包复制到的位置【打包后处于war包下的位置】 -->
        <targetPath>WEB-INF/lib</targetPath>
        <includes>
            <include>**/*.jar</include>
        </includes>
    </resource>
</webResources>


${project.parent.basedir}:父模块(父项目)的根路径;【用于可能引用父模块下其它子模块的路径】
${project.basedir}: 当前模块(项目)的根路径;

<include>**/*.jar</include> 用于指定哪些文件应该被包含在构建过程中。
<includes> 标签用于定义一个包含模式的列表。每个 <include> 标签定义一个包含模式。
在这个例子中,'**/*.jar' 是一个包含模式。这个模式会匹配任何目录下的 .jar 文件。'**' 表示任何目录(包括嵌套的目录),'*.jar' 表示任何以 .jar 结尾的文件。


示例(pom.xml)文件下:
<project>
    ...
    <build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-war-plugin</artifactId>
                <version>3.1.0</version> <!-- 请使用你需要的版本 -->
                <configuration>
                    <webResources>
                        <resource>
                            <directory>${project.parent.basedir}/sys-common/pack_lib</directory>
                            <targetPath>WEB-INF/lib</targetPath>
                            <includes>
                                <include>**/*.jar</include>
                            </includes>
                        </resource>
                    </webResources>
                </configuration>
            </plugin>
        </plugins>
    </build>
    ...
</project>
相关推荐
xunyan623411 分钟前
面向对象(下)-内部类的分类
java·学习
巴拉巴拉~~19 分钟前
KMP 算法通用进度条组件:KmpProgressWidget 多维度 + 匹配进度联动 + 平滑动画
java·服务器·前端
Yeniden1 小时前
Deepeek用大白话讲解 --> 迭代器模式(企业级场景1,多种遍历方式2,隐藏集合结构3,Java集合框架4)
java·开发语言·迭代器模式
景川呀1 小时前
Java的类加载器
java·开发语言·java类加载器
yaoxin5211231 小时前
274. Java Stream API - 过滤操作(filter):筛选你想要的数据
java·windows
小白勇闯网安圈1 小时前
Java面向对象(上)
java
一点晖光1 小时前
maven推送项目到harhor私有仓库
java·maven
代码or搬砖1 小时前
MySQL窗口函数 OVER()讲解
java·mysql
静心观复2 小时前
Java 中,`1 << 1`
java·开发语言
爱睡觉的王宇昊2 小时前
单体架构详细解析:从概念到实践--购物网站搭建
java·spring boot·架构·团队开发·个人开发·敏捷流程