Maven允许根据其运行的操作系统系列激活某些构建概要文件,例如:
<profile>
<activation>
<os><family>Windows</family></os>
</activation>
</profile>
这里有很多问题:那么os.family
的允许值是多少?它们区分大小写吗?Linux是UNIX
吗?还是UNIX
?等等。
我可以在哪里找到关于允许的值的信息-或者,至少,Maven从哪里获取这些值?环境变量?
这些值是在os.java
中的plexus-utils
项目中定义的。您可以在isos
中看到,匹配不区分大小写,值取自system.getProperty(“os.name”)
,并且应该指定UNIX
来匹配Linux平台。
我们有一个多模块maven项目,它有不同的平台可以运行,比如JBoss 4和JBoss 7。我们指定属性,然后将其用作工件的分类器,以及子模块中特定于平台的概要文件的激活,如: 在这些概要文件中,我们指定了提供的依赖项的版本。例如,我们进口jboss父pom: 因此,当我们将属性指定为命令行参数()时,它可以正常工作。 但是当属性在
但却被忽略了。 是否可以使用maven激活配置文件?
另一个Maven问题。我有一个用Maven-SureFire-Plugin运行的TestNG测试的应用程序。我已经创建了2个配置文件,用于pdoruction和测试。
我声明了一些特定于Maven配置文件的属性。我的pom.xml的一部分: 当我通过IntelliJ IDEA 2016启动Junit测试时,我在使用“ci”Maven配置文件时遇到一些问题。我通过“Maven项目”面板激活我的配置文件,然后启动测试。问题是“my.properties.file”属性值等于“foo.xml”,而不是“bar.xml”。 我对命令行没有问题(我可以使用“-Pci”标志
出于某种原因,我不得不使用环境变量,而不是将系统属性传递给mvn命令。所以,我使用${env。PROFILE}作为属性名,pom.xml中的配置文件设置显示如下: 然后,我尝试激活配置文件到在线,但我失败了,命令行显示如下: 然后打开maven调试模式(-X),属性如下所示: 我们可以在上述属性列表中找到属性: “PROFILE”变量似乎是在envrionment中设置的。但是,“在线”配置文件未
我有以下maven配置文件 我在 因此,dev是Spring和maven配置文件的默认值。 根据文档,这应该覆盖我的属性文件中的值 http://docs.spring.io/spring-boot/docs/current/reference/html/howto-properties-and-configuration.html 69.5设置活动Spring外形 Spring环境对此有一个AP