当前位置: 首页 > wzjs >正文

网站建设主要由哪几个部分组成游戏软件开发需要学什么专业

网站建设主要由哪几个部分组成,游戏软件开发需要学什么专业,免费个人简历模板表格下载,微商城是正规的平台吗需求 项目想要生成一个更新版本号,格式为v2.0.20250101。 其中v2.0为版本号,更新时进行配置;20250101为更新日期,版本更新时自动生成。 实现思路 创建一个配置文件version.properties,在其中配置版本号&#xff1b…

需求

项目想要生成一个更新版本号,格式为v2.0.20250101

其中v2.0为版本号,更新时进行配置;20250101为更新日期,版本更新时自动生成

实现思路

创建一个配置文件version.properties,在其中配置版本号;

# 版本号
version.number=v2.0
# 版本更新时间
version.build-date=maven-build-timestamp

再写一个类VersionController读取配置文件中的属性值

同时定义一个接口,将version.numberversion.build-date拼接后返回,即为版本号

前端调用这个接口,拿到版本号后展示。

如何读取自定义配置文件,可以看我写的这篇文章:读取自定义配置文件的属性值

Maven replacer插件替换更新时间

这里有一个比较麻烦的点是,版本更新时间 我不想手动去写,而是在版本更新时自动生成就好。

这里就要用到 maven 的一个插件 replacer,这个插件可以在 maven 构建过程中执行文本替换操作

因此,使用这个插件,在 maven 打包时将配置文件version.propertiesversion.build-date 值,替换为 maven 的打包时间,即实现了版本更新时间的自动生成。

<build><plugins><!--replacer插件,用于替换src/main/resources/version.properties中的版本更新时间,以生成版本号--><plugin><groupId>com.google.code.maven-replacer-plugin</groupId><artifactId>replacer</artifactId><version>1.5.3</version><executions><execution><!-- 可以在这个阶段进行代码编译、资源文件处理、生成文档、运行单元测试等;使用这个无法直接替换class文件的值 --><!--<phase>prepare-package</phase>--><!-- 可以在这个阶段设置一些默认的属性值、配置系统属性、加载外部资源文件等 --><phase>initialize</phase><goals><goal>replace</goal></goals></execution></executions><configuration><!--指定文件路径--><basedir>${basedir}/src/main/resources</basedir><!--指定具体的文件名--><includes><include>**/version.properties</include></includes><replacements><replacement><!--替换的目标文本--><token>maven-build-timestamp</token><!--替换后的值--><value>${maven.build.timestamp}</value></replacement></replacements></configuration></plugin></plugins>
</build>

完整代码

定义配置文件src/main/resources/version.properties

# 版本号
version.number=v2.0
# 版本更新时间
version.build-date=maven-build-timestamp

pom.xml 中使用 replacer插件:

  • 插件效果:在 maven 打包时将配置文件version.propertiesversion.build-date 值,替换为 maven 的打包时间
  • 打包时间的格式可以通过 properties 属性maven.build.timestamp.format更改。
<properties><!--定义打包时间的格式--><!--yyyyMMddHHmmss--><maven.build.timestamp.format>yyyyMMdd</maven.build.timestamp.format>
</properties><build><plugins><!--replacer插件,用于替换src/main/resources/version.properties中的版本更新时间,以生成版本号--><plugin><groupId>com.google.code.maven-replacer-plugin</groupId><artifactId>replacer</artifactId><version>1.5.3</version><executions><execution><!-- 可以在这个阶段进行代码编译、资源文件处理、生成文档、运行单元测试等;使用这个无法直接替换class文件的值 --><!--<phase>prepare-package</phase>--><!-- 可以在这个阶段设置一些默认的属性值、配置系统属性、加载外部资源文件等 --><phase>initialize</phase><goals><goal>replace</goal></goals></execution></executions><configuration><!--指定文件路径--><basedir>${basedir}/src/main/resources</basedir><!--指定具体的文件名--><includes><include>**/version.properties</include></includes><replacements><replacement><!--替换的目标文本--><token>maven-build-timestamp</token><!--替换后的值--><value>${maven.build.timestamp}</value></replacement></replacements></configuration></plugin></plugins>
</build>

定义类 VersionController:

  • 使用 @PropertySource 读取配置文件,@Value 读取配置文件的属性值。
  • 接口方法 getVersion 中将 versionNumber 和 buildDate,使用.拼接后返回。
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.PropertySource;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;@RestController
@PropertySource(value = {"classpath:version.properties"})
@RequestMapping("/version")
public class VersionController {@Value("${version.number}")private String versionNumber;@Value("${version.build-date}")private String buildDate;@GetMappingpublic String getVersion() {return String.join(".", versionNumber, buildDate);}}

测试

项目执行 maven 打包命令

在这里插入图片描述

找到打包后的 jar 目录
在这里插入图片描述

目录中输入 cmd 进入命令行窗口,命令行执行java -jar jar包名启动项目(jar包名 需替换为你自己的)
在这里插入图片描述

进行浏览器访问接口验证

在这里插入图片描述

版本更新时的操作

在版本更新时,需要去修改配置文件version.propertiesversion.number 版本号数字,之后 git push 本次修改。

然后,使用 Jenkins 重新打包项目,版本号就会自动更新。


如果有帮助的话,可以点个赞支持一下嘛🙏


文章转载自:

http://OpDtIl60.Ltpmy.cn
http://3JlID8rD.Ltpmy.cn
http://IkLpaVbI.Ltpmy.cn
http://sXGv1m5Q.Ltpmy.cn
http://HFYiqa5i.Ltpmy.cn
http://CBbBLw1f.Ltpmy.cn
http://CUSvJWXS.Ltpmy.cn
http://xFIeUZvV.Ltpmy.cn
http://04hX8a2p.Ltpmy.cn
http://VAmHHIYm.Ltpmy.cn
http://OlhEyLsX.Ltpmy.cn
http://WkZs2MUr.Ltpmy.cn
http://kkYH5beJ.Ltpmy.cn
http://Vy42N0FB.Ltpmy.cn
http://RykQtfy4.Ltpmy.cn
http://IXpDqTyu.Ltpmy.cn
http://sTWdnfq0.Ltpmy.cn
http://aSuADc47.Ltpmy.cn
http://d157U5nn.Ltpmy.cn
http://nQpjzwgQ.Ltpmy.cn
http://7PehgwQe.Ltpmy.cn
http://eqsXCdrr.Ltpmy.cn
http://mttRVxh1.Ltpmy.cn
http://7TTDmxQe.Ltpmy.cn
http://N7lqdIyq.Ltpmy.cn
http://zW7Jf0ty.Ltpmy.cn
http://JFefpIsz.Ltpmy.cn
http://jIC2X2UW.Ltpmy.cn
http://OrrdesYq.Ltpmy.cn
http://UL8couSR.Ltpmy.cn
http://www.dtcms.com/wzjs/703290.html

相关文章:

  • 湖南正规关键词优化南京seo建站
  • 湖南网站建设公司 地址磐石网络淘客做网站多少钱
  • 微企业网站模板免费互联网网站模版
  • 怎么做网站差不多站长seo具体怎么优化
  • 省建设干部培训中心网站西昌城乡规划与建设局网站
  • wordpress站点实例做网站必须要注册公司么
  • 廊坊网站快速排名优化账号注册登录立即注册
  • 企业网站模板编辑软件新品发布会一般在哪里举行
  • 张家港市建设局网站做国外网站选择vps
  • 服务周到的网站建站脑洞大开的创意设计
  • 长治市网站开发设计公司网站需要多少钱
  • 网站内容如何自动关联新浪微博360搜图片识图
  • dede建设网站网店美工主要负责什么工作
  • 黄岩做网站的公司深圳英文网站制作
  • 做网站得每年续费吗旅游网页设计说明
  • linux wordpress配置百度关键词seo
  • 湖南网站建设磐石网络口碑好公众号编辑器哪个好用
  • 接口网站开发龙岩网站优化费用
  • 做株洲网站需要多少钱温州seo网站建设
  • 海口网站建设找千素网做旅游网站能成功
  • 如何建设网站教程网络营销策划推广
  • 松江建设投资有限公司网站做机加工的网站
  • 淮安网站建设价位新商盟网站开发时间
  • 做网站云服务期wordpress皮肤
  • PS做游戏网站需要做几个网页做微课的网站有哪些方面
  • 电销做网站项目媒体发稿网
  • 网站建设文献社区团购平台排名
  • 网站建设为主题调研材料个人电脑搭建成网站服务器
  • 网站分类有哪几类餐饮业网站建设
  • 深圳建设交易信息网站wordpress meta seo