我的公司试图找到一种方法来使用Maven在EAR和WAR上放置某种类型的版本文件或版本。使用Maven将版本文件放到EAR或WAR中
我们需要的是像我们这样的Maven构建是采取一个版本号出文件的,不知怎么把它变成一个EAR或WAR还是有一些更好的办法..
我想听听形式其他人如何做到这一点。
我们使用Maven,Git,Bamboo等。因此,如果莫名其妙的Git可以把一个版本或提交数量成则Maven可以利用这将是伟大的一个文件
我的公司试图找到一种方法来使用Maven在EAR和WAR上放置某种类型的版本文件或版本。使用Maven将版本文件放到EAR或WAR中
我们需要的是像我们这样的Maven构建是采取一个版本号出文件的,不知怎么把它变成一个EAR或WAR还是有一些更好的办法..
我想听听形式其他人如何做到这一点。
我们使用Maven,Git,Bamboo等。因此,如果莫名其妙的Git可以把一个版本或提交数量成则Maven可以利用这将是伟大的一个文件
你至少要选择:
定制清单条目。
战争插件允许您将一些信息添加到清单文件中。耳机插件有指定清单文件或设置一些环境设置的选项:https://maven.apache.org/plugins/maven-ear-plugin/examples/specifying-env-entries-for-the-generated-application-xml.html
(请注意:今天它的$ {project.version}而不是$ {pom.version}。值添加到属性文件,并使用过滤器来替换占位符
创建的src/main /资源一个简单的文本或属性文件,像application.properties:
app.version = $ {project.version} app.description = $ {project.description}
然后为该文件启用资源过滤:http://maven.apache.org/plugins/maven-resources-plugin/examples/filter.html。 您还可以访问环境变量:$ {env.variable_name}并使用来自竹子的构建编号(作为参数传递给构建)。
像http://www.mojohaus.org/buildnumber-maven-plugin/这样的插件允许您添加SVN修订版本号或Git Sha1 Commit Hash。
如果你正在使用release插件,maven会自己在发布的jar或war的maven文件夹中(meta-inf文件夹内)添加一些信息。
如果您也有兴趣通过网址阅读这些版本信息,例如'http:// example.com/versioninfo.txt',您可以过滤'versioninfo.txt'模板和[包含版本文件进入战争](http://www.taringamberini.com/en/howto/java/2015/including-release-info-into-war/)通过使用'maven-war-plugin'。 – taringamberini