Maven打包操作

news2024/9/21 14:51:14

        对于企业级项目,无论是进行本地测试,还是测试环境测试以及最终的项目上线,都会涉及项目的打包操作。对于每个环境下的项目打包,对应的项目所需要的配置资源都会有所区别,实现打包的方式有很多种,可以通过ant,或者通过idea 自带的打包功能实现项目打包,但当项目很大并且需要的外界配置很多时,此时打包的配置就会异常复杂,对于maven 项目,我们可以用过 pom.xml 配置的方式来实现打包时的环境选择,相比较其他形式打包工具,通过maven 只需要通过简单的配置,就可以轻松完成不同环境下项目的整体打包。

        使用idea创建项目,目录结构可能会缺失,需要通过手动添加对应的目录结构

1.首先创建maven的web项目 

 

 

 清空和修改pom文件

2. 添加 Java 源文件夹 

选择项目的 main 文件夹,右键选择New,选择Directory

 3. 添加资源文件夹

步骤如上,创建文件夹,命名为 resources

 4. 添加对应的文件夹目录,及添加不同环境下对应的配置文件。(本地环境、测试环境、正式环境)

 5. 在pom文件当中添加打包环境

<!-- 打包环境配置 开发环境 测试环境 正式环境 -->
<profiles>
  <profile>
    <id>dev</id>
    <properties>
      <env>dev</env>
    </properties>
    <!-- 未指定环境时,默认打包dev环境 -->
    <activation>
      <activeByDefault>true</activeByDefault>
    </activation>
  </profile>
  <profile>
    <id>test</id>
    <properties>
      <env>test</env>
    </properties>
  </profile>
  <profile>
    <id>product</id>
    <properties>
      <env>product</env>
    </properties>
  </profile>
</profiles>

6.设置资源文件配置

<!-- 对于项目资源文件的配置放在build中 -->
<resources>
  <resource>
    <directory>src/main/resources/${env}</directory>
  </resource>
  <resource>
    <directory>src/main/java</directory>
    <includes>
      <include>**/*.xml</include>
      <include>**/*.properties</include>
      <include>**/*.tld</include>
    </includes>
    <filtering>false</filtering>
  </resource>
</resources>

7.打包


maven打包操作个人见解,希望对你有帮助!不足请补充指正!

下期分享:maven依赖的基本概念

URL:maven依赖基本概念

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/393279.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【Linux】进程理解与学习(Ⅰ)

环境&#xff1a;centos7.6&#xff0c;腾讯云服务器Linux文章都放在了专栏&#xff1a;【Linux】欢迎支持订阅&#x1f339;相关文章推荐&#xff1a;【Linux】冯.诺依曼体系结构与操作系统进程概念什么是进程&#xff1f;进程是什么&#xff1f;我们打开任务管理器可以看到有…

Flex弹性布局一文通【最全Flex教学】

文章目录一.Flex布局1.1 传统布局和flex布局1.1.1 传统布局1.1.2 flex弹性布局1.2 flex初步体验1.3 布局原理二.常见Flex属性2.1 常见父项属性2.2 flex-direction主轴的方向2.3 justify-content设置主轴上的子元素排列方式2.4 设置子元素是否flex-wrap换行2.5 align-itmes设置侧…

数列的极限

数列的极限的定义&#xff1a; 当正多边形的边数越来越多时&#xff0c;正多边形的面积越来越接近于圆的面积。 这个过程就叫做极限。 数列的形式&#xff1a; 数列的每一个下标对应一个数列元素值。 认识数列 这就是4个数列的表现形式。 当数列的下标无限增长时&#xff0c…

记录--uni-app中安卓包检查更新、新版本下载、下载进度条显示功能实现

这里给大家分享我在网上总结出来的一些知识&#xff0c;希望对大家有所帮助 需求描述 如果想要做一个app的话&#xff0c;可以有很多种选择方案&#xff0c;uni-app是其中的一个性价比高一些(坑多一些)的方案。本文记录一下&#xff0c;uni-app打安卓包以后&#xff0c;需要检查…

【操作系统】如何避免预读失效和缓存污染的问题?

【操作系统】如何避免预读失效和缓存污染的问题&#xff1f; 文章目录【操作系统】如何避免预读失效和缓存污染的问题&#xff1f;Linux 和 MySQL 的缓存Linux 操作系统的缓存MySQL 的缓存传统 LRU 是如何管理内存数据的&#xff1f;预读失效&#xff0c;怎么办&#xff1f;什么…

bash if 判断及特殊字符

bash if 判断 1)字符串判断 str1 str2     当两个串有相同内容、长度时为真 str1 ! str2     当串str1和str2不等时为真 -n str1       当串的长度大于0时为真(串非空) -z str1       当串的长度为0时为真(空串) str1        当串str1为非…

华为OD机试题,用 Java 解【众数和中位数】问题

华为Od必看系列 华为OD机试 全流程解析+经验分享,题型分享,防作弊指南)华为od机试,独家整理 已参加机试人员的实战技巧华为od 2023 | 什么是华为od,od 薪资待遇,od机试题清单华为OD机试真题大全,用 Python 解华为机试题 | 机试宝典使用说明 参加华为od机试,一定要注意不…

Spark DPP

Spark DPP分区剪裁动态分区剪裁DPP (Dynamic Partition Pruning&#xff0c;动态分区剪裁) : 过滤维度表后&#xff0c;能削减事实表的数据扫描量&#xff0c;提升关联计算的执行性能 分区剪裁 需求 &#xff1a;统计所有头部用户贡献的营业额&#xff0c;并按照营业额倒序排…

体验 Linux 音频驱动

目录 一、音频接口简介 1、音频编解码芯片 2、 WM8960 3、I2S总线接口 二、硬件原理图 三、音频驱动使能 三、使能内核的 WM8960 驱动 1、取消 ALSA 模拟 OSS API 2、使能 I.MX6ULL 的 WM8960 驱动 验证 四、alsa-lib 和 alsa-utils 移植 1、alsa-utils 移植 ①、开…

AUTOSAR知识点Com(四):CANIf接收

1、概述 根据AUTOSAR BSW架构&#xff0c;接收到的数据将在上层通信模块&#xff0c;即AUTOSAR COM、CanNm、CanTp和DCM中进行评估和处理。这意味着&#xff0c;上层模块既不能使用CanDrv的缓冲区&#xff0c;也不能访问CanIf的缓冲区。只有当CanIfPublicReadRxPduDataApi设置为…

自考本科计算机网络原理(04741)历年大题真题【18年10月-22年10月】

文章目录一、简答题&#xff08;历年真题&#xff09;18年10月-22年10月历年简答题出题情况分析2018年10月2019年4月2019年10月2020年8月2020年10月2021年4月2021年10月2022年4月2022年10月二、综合题&#xff08;历年真题&#xff09;2018年10月2019年4月2019年10月2020年8月2…

javaFunction函数,函数式接口,HashMap中的computeIfAbsent() 方法的使用

由于平时很少用到这种写法&#xff0c;导致每次看到有一脸懵逼&#xff0c;然后一段时间就要总结复习一次。。。。。。如图所示???这是什么牛马写法? Function<String, String> toUpperCase str -> str.toUpperCase();仔细分析一下&#xff0c;这因该要新建一个对…

Allegro如何使用自带的功能更改差分的线宽和间距操作指导

Allegro如何使用自带的功能更改差分的线宽和间距操作指导 在做PCB设计的时候,有时候PCB已经完成了布线,但是因为某些原因更改了层叠导致了差分的线宽和间距发生了变化,导致差分需要重新走一遍,如下图 如果差分数量比较多,重走是比较费时间的,Allegro自身有快速更新差分线…

服务器源码安装openssh7.4p1

系统环境&#xff1a; OS&#xff1a;Kylin-Server-10-SP2-x86-Release-Build09-20210524 软件版本&#xff1a;OpenSSH_8.2p1, OpenSSL 1.1.1f 一、源码安装升级 1、下载源码包 下载zlib-1.2.11.tar.gz、openssl-1.0.2k.tar.gz、openssh-7.4p1.tar.gz&#xff0c; openssl不…

【强化学习】一文弄懂,Q-learning和Sarsa的区别

一文弄懂&#xff0c;Q-learning和Sarsa的区别 2023.3.6 本文主要参考莫烦老师内容1. 理解Q_learning算法 主要看下面讲解&#xff0c;就不抄了&#xff1a; https://mofanpy.com/tutorials/machine-learning/reinforcement-learning/intro-q-learning 读懂几个内容&#xf…

旋转数组的几种做法

千淘万浪虽辛苦&#xff0c;吹尽黄沙始到金。 ——刘禹锡 第一种方法&#xff1a;遍历整个数组 题目描述&#xff1a; 一个数组A中存有N (N>0) 个整数&#xff0c;允许使用另外数组&#xff0c;将每个整数循环向右移动M(M>0)个位置。如果需要…

【Redis学习3】Redis四种模式之主从复制

主从复制模式 主从复制&#xff0c;是指将一台Redis服务器的数据&#xff0c;复制到其他的Redis服务器。 前者称为主节点&#xff08;master&#xff09;&#xff0c;后者成为从节点&#xff08;slave&#xff09;&#xff1b;数据的复制是单向&#xff0c;主要是由主节点到从…

一把火烧掉了苹果摆脱中国制造的幻想,印度制造难担重任

这几年苹果不断推动印度制造&#xff0c;希望摆脱对中国制造的依赖&#xff0c;然而近期苹果在印度的一家代工厂发生大火却证明了苹果的这一计划遭受重大打击&#xff0c;印度制造根本就无法中国制造。一、印度制造屡屡发生幺蛾子苹果推动印度制造已有多年了&#xff0c;然而印…

Allegro如何刷新封装和库里的封装同步操作指导

Allegro如何刷新封装和库里的封装同步操作指导 在做PCB设计的过程中,有时会因为库里的封装有更新,所以PCB上使用到了这个封装时候需要和库里的同步,如下图 如何刷新,具体操作如下 点击Place点击Update Symbols

算法刷题-python版-最大回文子串

文章目录回文字符串如何判断是回文字符串求解字符串的最大回文子串暴力求解中心扩展&#xff08;比较优的方式&#xff09;两种方式性能对比回文字符串 正读、反读都是同一个字符串本身&#xff0c;这样的字符串就是回文字符串。 如 abccba 是回文字符串&#xff1b; 而 abcd …