在maven中,使用以下语法在pom中设置属性非常容易:
...
<properties>
<myValue>4.06.17.6</myValue>
</properties>
...
现在,我需要构建一个取决于pom版本的属性。为了创建属性,我想执行以下操作(java伪代码):
String[] parts = version.split("\\.");
String.format("V%s_%s_%s_P%s", splitted[0], splitted[1],splitted[2],splitted[3]);
// example: 4.06.17.6 => V_4_06_17_P6
它应该是动态的,因为它在我们的存储库中用作标记名,并且必须始终与工件的版本同步。
任何想法如何创建该“动态”属性?
Mojo的Build-Helper Maven插件可以在这里为您提供帮助。
有许多目标可用于帮助转换属性。
有
构建帮助器:正则表达式属性
build-helper:解析版本
build-helper:发布版本
正则表达式属性可能是您想要的,但是如果您的版本号符合“标准”,则另外两个可能会节省您的时间。
要使用正则表达式属性目标,您需要执行以下操作
<project>
...
<build>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
<version>1.7</version>
<executions>
<execution>
<id>regex-property</id>
<goals>
<goal>regex-property</goal>
</goals>
<configuration>
<name>tag.version</name>
<value>${project.version}</value>
<regex>^([0-9]+)\.([0-9]+)\.([0-9]+)\.([0-9]+)\.(-SNAPSHOT)?$</regex>
<replacement>V$1_$2_$3_P$4</replacement>
<failIfNoMatch>true</failIfNoMatch>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
...
</project>
注意:我的regex可能会略有偏离,因此您应该测试上述内容。
注意:该属性值仅在此执行绑定到的阶段之后才可用于执行。绑定到的默认阶段是,validate
但是如果您处于不同的生命周期(例如站点生命周期),则该值将不可用。
问题内容: 我正在尝试使一个Maven托管项目在命令行上运行。 我在pom.xml中有一组依赖关系,这些依赖关系随后被下载并安装在〜/ .m2 / repository /中。我在pom中包含了必要的配置,以将类路径添加到jar清单中。 现在的问题是我试图这样运行jar:java -jar project-SNAPSHOT.jar。 Java找不到下载的依赖项(我想是因为列出的依赖项在清单中没有路
该实体 存储库 创建Q类 我做错了什么?我使用的querydsl版本正确吗?我是不是应该回到mysema的建筑里去?是否有类似于JPA世界中的用于此目的的存储库? 提前道谢!
问题内容: 我有一个Python类,其属性名为:date1,date2,date3等。 在运行时,我有一个变量i,它是一个整数。 我想要做的是基于i的值在运行时访问适当的date属性。 例如, 如果i == 1,我想访问myobject.date1 如果i == 2,我想访问myobject.date2 我想为类而不是属性做类似的事情。 例如,我有一堆类:MyClass1,MyClass2,MyC
请找到我的pom.xml 4.0.0 @runwith(cucumber.class)@cucumberoptions(features={“c:\users\rishabh patel\eclipse-workspace\cucumberreports\feature”},glue={“stepdefinition”},plugin={“pretty”,“json:target/cucumber
问题内容: 我正在尝试根据此文档http://wtforms.simplecodes.com/docs/1.0.2/specific_problems.html#dynamic-form-composition在WTForms中生成具有动态字段的表单 我有这个子窗体类,它允许用户从列表中选择要购买的物品: 购物商品将有多个类别,因此我想根据用户选择的类别生成一个动态选择字段: 但出现以下错误: 我
问题内容: 我在数据库中有几条记录,它们想要形成如下URL: 该会从数据库中拉出。 有什么办法可以在flask中取出吗? 问题答案: 你可以将变量名放在views.py函数中。例如: 为了使数据库信息显示在你的站点上,你需要将参数传递到模板中。因此,在模板中,你将引用以下参数: 然后,当你访问mysite.com/post/anything_here时,“ anything_here”将进入你的函