java时间戳版本号_maven 自动编译版本号 buildnumber-maven-plugin 1.4

最近新项目要需要更新发布版本号,用于标识发布的版本,网上找了下插件:buildnumber-maven-plugin 1.4 。

记录下自己使用成功过程中遇到的各种问题,以供需要的朋友参考:

插件官方网站:http://www.mojohaus.org/buildnumber-maven-plugin/usage.html(官网内附详细说明)

一、在项目pom.xml中添加相关配置

1)....中添加buildnumber-maven-plugin插件。

org.codehaus.mojo

buildnumber-maven-plugin

1.4

{0,date,yyyy-MM-dd HH:mm:ss}

timestamp

validate

create-timestamp

2)....中添加上面item:timestamp指定输出的配置文件的路径:

我把timestamp输出的版本号(时间戳格式的)放在 monitor.properties里。

...里的内容为配置文件的目录路径:src/main/resources

src/main/resources

true

3).timestamp输出属性定义:

与.properties文件中的相对应。

${timestamp}

二、jave代码中读取

monitor.properties文件中的project.build.timestamp属性,将时间戳格式转化成想要的日期格式,保存到库表。

-----------------------------------------------------------------------------------------------------------------------------------------------------------------

遇到的问题:

1. 开始用的是create,但是编译会报错,替换成create-timestamp即可。

[ERROR] Failed to execute goal org.codehaus.mojo:buildnumber-maven-plugin:1.0:create (default) on project projectname: Execution default of goal org.codehaus.mojo:buildnumber-maven-plugin:1.0:create failed: The scm url cannot be null. -> [Help 1]

org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal org.codehaus.mojo:buildnumber-maven-plugin:1.0:create (default) on project projectname: Execution default of goal org.codehaus.mojo:buildnumber-maven-plugin:1.0:create failed: The scm url cannot be null.

at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:225)

at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153)

at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145)

at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:84)

at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:59)

at org.apache.maven.lifecycle.internal.LifecycleStarter.singleThreadedBuild(LifecycleStarter.java:183)

at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:161)

at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:319)

at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:156)

at org.apache.maven.cli.MavenCli.execute(MavenCli.java:534)

at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:196)

at org.apache.maven.cli.MavenCli.main(MavenCli.java:141)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)

at java.lang.reflect.Method.invoke(Method.java:597)

at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:290)

at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:230)

at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:409)

at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:352)

2. eclipse里excution报错:

1281439432867594240.htm

解决办法:

参考http://blog.csdn.net/huweijun_2012/article/details/51073782

3. maven clean install 编译工程报错:

[ERROR] Failed to execute goal org.codehaus.mojo:buildnumber-maven-plugin:1.4:cr

eate-timestamp (default) on project gdws-svc: Execution default of goal org.code

haus.mojo:buildnumber-maven-plugin:1.4:create-timestamp failed: A required class

was missing while executing org.codehaus.mojo:buildnumber-maven-plugin:1.4:crea

te-timestamp: org/apache/commons/lang/StringUtils

[ERROR] -----------------------------------------------------

[ERROR] realm = plugin>org.codehaus.mojo:buildnumber-maven-plugin:1.4

[ERROR] strategy = org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy

[ERROR] urls[0] = file:/D:/IDEStrain/maven/repository/org/codehaus/mojo/buildnum

ber-maven-plugin/1.4/buildnumber-maven-plugin-1.4.jar

[ERROR] urls[1] = file:/D:/IDEStrain/maven/repository/backport-util-concurrent/b

ackport-util-concurrent/3.1/backport-util-concurrent-3.1.jar

[ERROR] urls[2] = file:/D:/IDEStrain/maven/repository/org/codehaus/plexus/plexus

-interpolation/1.11/plexus-interpolation-1.11.jar

[ERROR] urls[3] = file:/D:/IDEStrain/maven/repository/org/slf4j/slf4j-jdk14/1.5.

6/slf4j-jdk14-1.5.6.jar

[ERROR] urls[4] = file:/D:/IDEStrain/maven/repository/org/slf4j/slf4j-api/1.5.6/

slf4j-api-1.5.6.jar

[ERROR] urls[5] = file:/D:/IDEStrain/maven/repository/org/slf4j/jcl-over-slf4j/1

.5.6/jcl-over-slf4j-1.5.6.jar

[ERROR] urls[6] = file:/D:/IDEStrain/maven/repository/org/apache/maven/reporting

/maven-reporting-api/2.2.1/maven-reporting-api-2.2.1.jar

[ERROR] urls[7] = file:/D:/IDEStrain/maven/repository/org/apache/maven/doxia/dox

ia-sink-api/1.1/doxia-sink-api-1.1.jar

[ERROR] urls[8] = file:/D:/IDEStrain/maven/repository/org/apache/maven/doxia/dox

ia-logging-api/1.1/doxia-logging-api-1.1.jar 解决:

执行buildnumber-maven-plugin插件时找不到commons-lang的StringUtils类。通过查看 maven本地仓库buildnumber-maven-plugin-1.4.pom文件,发现没有配置commons-lang包的依赖,添加配置如下依赖:

commons-lang

commons-lang

2.3

重新执行 clean install 通过!

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

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

相关文章

如何分割合并ISO文件

今天打算在电脑上装Androd系统,谷歌考虑到了这方面的需求,特意制作了liveandroidv0.3.iso操作系统的镜象文件供开发人员下载。没有人愿意为了装这个系统而把原先的系统换掉,许多人也只是想玩票一下。这样就只能用虚拟机安装了,虚拟…

推荐Linux内核书籍

大家好,挺久没推荐内核相关的书籍了,今天给大家推荐一本我觉得不错的书,这本书籍的作者叫做李云华,书籍名字叫《独辟蹊径品内核》,他的写作思路非常不错,他会引用内核代码中的内容,给大家剖析讲…

java照片墙_基于jQuery实现照片墙自动播放特效

一个动态展示图片的页面:功能:定时从后台取数据,进行页面图片追加。对已经在页面中的图片,进行放大缩小动画展示。目前我们用于微信新关注用户头像展示。抽奖body{background-color:#000;text-transform:uppercase;color:#fff;pos…

使用croc命令在Linux系统电脑之间传输文件和文件夹

‍在两台或多台计算机之间传输文件的方法有很多。‍你可以使用基于服务器的文件共享工具,点对点文件共享app,U盘,外部硬盘驱动器,SCP,NFS,FTP,HTTP,云存储平台等等。本文将介绍一个名…

Lady Bird

La Ballade of Lady Bird[Lady Bird]Bird : Lady? Lady : Yes Bird? Bird : Its cold Lady : I know Lady : Bird... I cannot see a thing Bird : Its all in your mind Lady : Im worried Bird : No one will come to see us Lady : Maybe they come but we just dont see …

揭秘 | 小米最新款12PRO智能动态刷新率技术原理

1. 背景最新发布的小米手机12pro提到了一个安卓系统上的新技术:智能动态刷新率。这到底是个啥技术?让雷军同学可以大吹特吹。智能动态刷新海报要解释上面的技术,不得不提刷新率和帧率这两个概念。在平时的生活当中,你可能也会经常…

看看高手做的ARM开发板

放假前,我写了一篇文章,里面有提到我放假的时候会接触一个开发板,这个开发板就是标题提到的这个ARM处理器,这篇文章会对这个处理器和开发板做个简单的介绍。说这个开发板前,先介绍下我的一个朋友zzy。zzy是通过公众号接…

心情-天气

最近雨还满多的,但不是阴雨连绵,中间会时不时有个大晴天。一直觉得下雨的日子就应该是安排在周一到周五,这样的话我就可以安心的聚精会神的上班,因为反正下雨哪里也不想去,还是好好上班比较好,躲在办公室里…

单线程会导致死锁吗?

我之前在我们的项目里面解决了一个死锁的问题,然后我跟一个我的朋友聊了下,他让我深入研究下这个问题。大家也可以考虑想我的这个问题。首先我们再看看什么是死锁?什么是死锁用个通俗的例子讲一讲死锁死锁从文字理论上说明的是两个线程&#…

Json的优缺点

JSON的定义 一种轻量级的数据交换格式,具有良好的可读和便于快速编写的特性。业内主流技术为其提供了完整的解决方案(有点类似于正则表达式 ,获得了当今大部分语言的支持),从而可以在不同平台间进行数据交换。JSON…

软件工程师 VS 硬件工程师

因为在软件行业35岁就算老人了而搞硬件的53岁正辉煌表面上看起来高大上的硬件工程师在实际的工作中,其实很惨...以上漫画虽然调侃的意味更多但现实中搞硬件的门槛确实很高收入也会随着经验的增多不断增长硬件工程师也基本不存在中年危机如果实在搞不下去了转项目经理…

假如我们的坦克继续前进队——需求改进系统设计

需求和原型改进 在上个星期的《需求说明书》课堂讨论中,老师提出了游戏的用户界面的设计问题。 经过小组成员的讨论后,我们的想法如下:设计关卡基于时间和人手问题难以实现因此改为一关的形式,以便有更多的时间出开发趣味性更高的…

DIY一个低成本多功能点阵时钟!

大家好,转发一篇正念同学的文章----大家好,我是ZhengN。本次转载一篇保姆级的diy教程:基于Esp8266的多功能点阵时钟 。简介很早就了解ESP8266了,当时也用这个搞过一些小demo,一直也没有想过要弄些实际的作品出来&#…

从DataTable导出Excel,并下载,删除Excel进程。

页面上加入一个button即可.源代码如下: usingSystem;usingSystem.Collections;usingSystem.ComponentModel;usingSystem.Data;usingSystem.Drawing;usingSystem.Web;usingSystem.Web.SessionState;usingSystem.Web.UI;usingSystem.Web.UI.WebControls;usingSystem.Web.UI.HtmlC…

Traceroute(路由追踪)的原理及实现

现实世界中的网络是由无数的计算机和路由器组成的一张的大网,应用的数据包在发送到服务器之前都要经过层层的路由转发。而Traceroute是一种常规的网络分析工具,用来定位到目标主机之间的所有路由器 原理 在介绍Traceroute的原理之前,需要了解…

我们应该搞清楚分支预测

分支预测的英文名字是「Branch Prediction」大家可以在Google上搜索这个关键字&#xff0c;可以看到关于分支预测的很多内容&#xff0c;不过要搞清楚分支预测如何工作的&#xff0c;才是问题的关键。分支预测对程序的影响我们来看看下面的两段代码代码1#include <algorithm…

Intent介绍及Intent在Activity中的使用方法

1.Intent的实现过程   在Android中&#xff0c;Intent不仅可用于应用程序之间的交互&#xff0c;也可用于应用程序内部的Activity/Service之间的交互。   Intent负责对应用中一次操作进行描述&#xff0c;描述内容包括动作以及动作所涉及的数据&#xff0c;Android中的In…

程序结束后去哪儿了?

大家好&#xff0c;我是写代码的篮球球痴&#xff0c;转发一篇卓老师的文章&#xff0c;文章中的内容我之前做单片机的时候也有遇到过。推荐给大家看看~简 介&#xff1a; 对于嵌入式系统&#xff0c;如果没有运行RTOS&#xff0c;那么程序开发中的 主函数&#xff08;main()&a…

CodeSmith终极玩法

CodeSmith是一个模仿asp.net运行机制的代码生成器, 运行时分析模板(相当aspx文件)的预编译指令和主体内容, 生成一个继承自CodeSmith.Engine.CodeTemplate(相当于System.Web.UI.Page)或者一个在Inherites预编译指令指定的类(相当于CodeBehind类)的源码, 且把它编译. 然后把这个…

bom与dom

区别 BOM&#xff08;Browser Object Model&#xff09; BOM 即浏览器对象模型&#xff0c;BOM没有相关标准&#xff0c;BOM的最核心对象是window对象。window对象既为javascript访问浏览器提供API&#xff0c;同时在ECMAScript中充当Global对象。BOM和浏览器关系密切&#xff…