【Java】Maven多环境切换实战(实操图解)

Java系列文章目录

补充内容 Windows通过SSH连接Linux
第一章 Linux基本命令的学习与Linux历史


文章目录

  • Java系列文章目录
  • 一、前言
  • 二、学习内容:
  • 三、问题描述
  • 四、解决方案:
    • 4.1 Maven多环境配置学习
    • 4.2 切换环境
      • 4.2.1 先打包
      • 4.2.2 之后可以切换
  • 五、总结:
    • 5.1 注意事项
    • 5.2 代码参考

一、前言

  • Maven多环境配置的使用
  • 参考代码附总结里

二、学习内容:

  • Maven多环境配置
  • 切换环境

三、问题描述

  • 不同人使用项目端口之类的配置可能不同
  • 生产环境与真实环境配置可能不同

四、解决方案:

4.1 Maven多环境配置学习

在pom.xml中添加多环境相关配置

  • 配置项目资源文件的处理方式

在这里插入图片描述

  • 指定配置文件就在下图红框部分

模板文件是自己建的

在这里插入图片描述

  • 定义不同环境的配置文件
    这个id就是对应 -P 后面的内容

在这里插入图片描述

🌟 <activeByDefault>true</activeByDefault> 这个配置通常出现在 Spring Boot 配置文件中,特别是与 Spring Profiles 相关的配置。它用于指定一个特定的 Spring Profile 是否默认激活

🌟 <filter>application-dev.properties</filter>:这是一个具体的过滤器条目,指定了一个名为application-dev.properties的文件。这意味着在构建过程中,该文件(或其内容)可能会被用作替换或过滤的模板

  • 具体文件内容

🌟 相当于替换符里面的内容在其他配置文件里面写好之后通过Maven切换

在这里插入图片描述

4.2 切换环境

4.2.1 先打包

  • 打包命令如下
mvn package

在这里插入图片描述

4.2.2 之后可以切换

  • 切换命令如下
    dev与prod就是上面配置文件的<id>

🌟 注意 P 是大写

mvn package -P dev
mvn package -P prod

终端输入后效果:
在这里插入图片描述

🌟 执行完后在target文件里面的配置文件就是当前项目配置文件

可以看到我们在application-prod.properties的配置正确替换了占位符的内容

在这里插入图片描述


五、总结:

5.1 注意事项

🌟 P是大写

5.2 代码参考

  • 多环境配置

剩下内容比较短看上面的图片即可

<?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 https://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><groupId>org.example</groupId><artifactId>Mylogin</artifactId><version>0.0.1-SNAPSHOT</version><name>Mylogin</name><description>Mylogin</description><properties><java.version>1.8</java.version><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding><project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding><spring-boot.version>3.0.2</spring-boot.version></properties><dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><scope>test</scope></dependency></dependencies><dependencyManagement><dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-dependencies</artifactId><version>${spring-boot.version}</version><type>pom</type><scope>import</scope></dependency></dependencies></dependencyManagement><build><plugins><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-compiler-plugin</artifactId><version>3.8.1</version><configuration><source>1.8</source><target>1.8</target><encoding>UTF-8</encoding></configuration></plugin><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId><version>${spring-boot.version}</version><configuration><mainClass>org.example.mylogin.MyloginApplication</mainClass><skip>true</skip></configuration><executions><execution><id>repackage</id><goals><goal>repackage</goal></goals></execution></executions></plugin></plugins><resources><resource><directory>src/main/resources</directory><filtering> true</filtering><includes><include>**/*.properties</include></includes></resource></resources></build><profiles><profile><id>dev</id><activation><activeByDefault>true</activeByDefault></activation><build><filters><filter>application-dev.properties</filter></filters></build></profile><profile><id>prod</id><build><filters><filter>application-prod.properties</filter></filters></build></profile></profiles></project>

(后续有遇到问题再添加)


声明:如本内容中存在错误或不准确之处,欢迎指正。转载时请注明原作者信息(麻辣香蝈蝈)。

在这里插入图片描述

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

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

相关文章

【ACM独立出版 | 厦大主办】第五届计算机科学与管理科技国际学术会议(ICCSMT 2024,10月18-20)

第五届计算机科学与管理科技国际学术会议(ICCSMT 2024) 定于2024年10月18-20日在中国厦门举行。 会议旨在为从事“计算机科学”与“管理科技”研究的专家学者、工程技术人员、技术研发人员提供一个共享科研成果和前沿技术&#xff0c;了解学术发展趋势&#xff0c;拓宽研究思路…

设计模式结构型模式之适配器模式

结构型模式之适配器模式 一、概述和使用场景1、概述2、使用场景&#xff1a;3、主要分类 二、 代码示例1、类适配器模式2、接口适配器3、对象适配器 四、总结1、适配器模式2、适配器模式的优点3、适配器模式的缺点 一、概述和使用场景 1、概述 适配器模式是一种结构型设计模式…

视频修复学习笔记

目录 PGTFormer 人脸修复 PGTFormer 人脸修复 PGTFormer&#xff08;Parsing-Guided Temporal-Coherent Transformer&#xff09; &#xff0c;这是第一个专门为视频人脸恢复设计的方法。PGTFormer采用了端到端的设计&#xff0c;摒弃了传统方法中的复杂对齐步骤&#xff0c…

React项目-less、antd配置

一、创建Reract项目 1、创建React项目 npx create-react-app react-test 2、运行eject Cesium静态资源需要webpack配置&#xff0c;执行npm run eject可以生成webpack配置&#xff0c;运行前先查看当前git版本是否有提交&#xff0c;如果未提交&#xff0c;需要先本地提交gi…

力扣面试经典算法150题:整数转罗马数字

整数转罗马数字 今天的题目是力扣面试经典150题中的数组的中等难度题&#xff1a; 整数转罗马数字。 题目链接&#xff1a;https://leetcode.cn/problems/integer-to-roman/description/?envTypestudy-plan-v2&envIdtop-interview-150 题目描述 七个不同的符号代表罗马…

GitHub与Gitee密钥对配置

一、生成 Gitee 的 SSH 密钥对 打开终端&#xff1a; 在 Windows 上可以使用 Git Bash&#xff0c;或在其他操作系统上打开终端。 生成 Gitee SSH 密钥&#xff1a; ssh-keygen -t rsa -b 4096 -C "your_email_for_giteeexample.com" -f ~/.ssh/id_rsa_gitee这里的邮…

SprinBoot+Vue餐厅点餐系统的设计与实现

目录 1 项目介绍2 项目截图3 核心代码3.1 Controller3.2 Service3.3 Dao3.4 application.yml3.5 SpringbootApplication3.5 Vue 4 数据库表设计5 文档参考6 计算机毕设选题推荐7 源码获取 1 项目介绍 博主个人介绍&#xff1a;CSDN认证博客专家&#xff0c;CSDN平台Java领域优质…

Python实现HTTP服务器

要在Python中实现一个简单的HTTP服务器&#xff0c;可以使用Python内置的库http.server&#xff0c;它是非常基础但足够演示基本HTTP服务的功能。 1. 导入必要的模块 首先&#xff0c;需要导入http.server和socketserver模块。http.server提供了基础的HTTP服务器功能&#xf…

探索 Linux 内核启动过程

目录 1. Linux 内核启动过程概述2. start_kernel (内核初始化)3. rest_init4. kernel_init5. kthreadd总结 1. Linux 内核启动过程概述 在 Linux (2.6.39.4)系统的启动过程中&#xff0c;内核扮演了至关重要的角色。它负责从系统启动开始&#xff0c;初始化硬件、管理内存、加…

stm32智能颜色送餐小车(ESP8266WIFI模块、APP制作、物联网模型建立、MQTTFX)

大家好啊&#xff0c;我是情谊&#xff0c;今天我们来介绍一下我最近设计的stm32产品&#xff0c;我们在今年七月份的时候参加了光电设计大赛&#xff0c;我们小队使用的就是stm32的智能送餐小车&#xff0c;虽然止步于省赛&#xff0c;但是还是一次成长的经验吧&#xff0c;那…

Byte Pair Encoding(BPE)算法原理以及其python实现

Byte Pair Encoding(BPE)是一种基于统计的压缩算法,最初由Gage于1994年在“A New Algorithm for Data Compression”一文中提出。尽管其初衷是用于数据压缩,但随着自然语言处理(NLP)的发展,BPE被广泛应用于词汇表构建和分词任务中,尤其是在处理形态丰富的语言时表现尤为…

【PostgreSQL教程】PostgreSQL 高级篇之 视图

博主介绍:✌全网粉丝20W+,CSDN博客专家、Java领域优质创作者,掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域✌ 技术范围:SpringBoot、SpringCloud、Vue、SSM、HTML、Nodejs、Python、MySQL、PostgreSQL、大数据、物联网、机器学习等设计与开发。 感兴趣的可…

MySQL基本查询语言

基本查询语言的结构 最简单的查询语句&#xff1a; select...from.... 一个完整的普通查询语句结构如下&#xff1a; select [distinct].....from....[where....][group by .....][having.....][order by.....][limit.....] 查询语句的执行顺序 1. 先执行from子句:基于表进行…

如何结束monkey运行

引言 在 Android 开发过程中&#xff0c;monkey 测试是一种常用的随机测试手段&#xff0c;用于模拟用户的各种操作来发现应用中的稳定性问题。然而&#xff0c;在某些情况下&#xff0c;您可能需要提前结束正在进行的 monkey 测试&#xff0c;比如当您发现了一些重要的问题需…

java在项目中实现excel导入导出

一、初识EasyExcel* 1. Apache POI 先说POI&#xff0c;有过报表导入导出经验的同学&#xff0c;应该听过或者使用。 Apache POI是Apache软件基金会的开源函式库&#xff0c;提供跨平台的Java API实现Microsoft Office格式档案读写。但是存在如下一些问题&#xff1a; 1.1 …

SpringBoot 项目——抽奖系统

本项目主要实现的功能是&#xff1a;主要服务于管理员用户&#xff0c;其可圈选奖品&#xff0c;人员来创建抽奖活动&#xff0c;并进行在线抽奖&#xff0c;并可通过短信或邮件的方式通知中奖者&#xff0c;同时普通用户可查看已结束的抽奖活动的中奖结果&#xff1b; 一、项…

TESSY创建单元测试或集成测试工程

我们以tessy5.1 IDE为例&#xff0c;给大家展示工程的创建过程。 1、打开TESSY5.1软件后&#xff0c;会弹出&#xff1a; 2、点击NEW Project后&#xff0c;会弹出&#xff1a; 3、接下来&#xff0c;就可以打开刚创建的工程&#xff1a; 4、进入到TESSY的主界面后&#xff0c…

Python办公自动化 获取文本数据 支持多种类型文件

学好办公自动化,走遍天下都不怕&#xff01;&#xff01; 前面我们已经学习了&#xff0c;如何用python的下载安装以及入门基础知识&#xff0c;并且也知道如何使用python自动处理Excel文件数据、如何批量生成Word文件、如何对数据分析后生成洞察报告、如何用python实现自动发送…

React中实现antd自定义图标,鼠标悬浮变色

借助 antd 的 tooltip 组件来实现 hover 时变色的效果 1.新建组件 自定义图标一般在iconfont上面获取&#xff0c;复制下来的svg代码&#xff0c;切记要删除 fill 属性后添加到组件中 import { Tooltip } from "antd"; import React from "react";const …

一种后缀数组的奇妙运用

最近参加了thucamp&#xff0c;其中day5的E题是一个有难度的字符串。 大部分人都是用后缀自动机做&#xff0c;我也是这样感觉的&#xff0c;不过想了好一会儿也没有很清晰的思路&#xff0c;但是突然想到了一个用后缀数组建树的方法&#xff0c;我2h码了7kb的代码&#xff0c…