Maven配置文件变量web项目不工作
我有一个模块化的maven项目,包含3个模块。在其中一个(WEB)中,配置文件变量未被识别为环境变量,但它采用它的真实名称,如下所示:Maven配置文件变量web项目不工作,maven,variables,inheritance,classification,profile,Maven,Variables,Inheritance,Classification,Profile,我有一个模块化的maven项目,包含3个模块。在其中一个(WEB)中,配置文件变量未被识别为环境变量,但它采用它的真实名称,如下所示: <Principal POM> <Module App-core> <Module ejb> <Module web> 在主要POM中,有3个剖面具有相同的剖面属性和不同的值: <profile1> <environment>value1<
<Principal POM>
<Module App-core>
<Module ejb>
<Module web>
在主要POM中,有3个剖面具有相同的剖面属性和不同的值:
<profile1>
<environment>value1</environment>
<profile2>
<environment>value2</environment>
<profile3>
<environment>value3</environment>
价值1
价值2
价值3
该变量用作依赖项的分类器变量,如下所示:
<dependency>
<groupId>com.test</groupId>
<artifactId>app-core</artifactId>
<version>1.0.0</version>
<classifier>${environment}</classifier>
</dependency>
com.test
应用核心
1.0.0
${environment}
在maven编译阶段,仅在Web项目中,它不会用变量值更改变量名
有任何帮助吗?标记配置文件1配置文件2配置文件3未启用替换属性。为此,您必须以这种方式更改您的父pom
<project>
<build>
<resources>
<resource>
<directory>src/main/resources</directory>
<filtering>true</filtering>
</resource>
</resources>
</build>
<profiles>
<profile>
<id>profile1</id>
<properties>
<environment>value1</environment>
</properties>
</profile>
<profile>
<id>profile2</id>
<properties>
<environment>value2</environment>
</properties>
</profile>
<profile>
<id>profile3</id>
<properties>
<environment>value2</environment>
</properties>
</profile>
</profiles>
</project>
src/main/resources
真的
简介1
价值1
简介2
价值2
简介3
价值2
现在您必须运行mvn安装-p profile1 yourProjectName我已经解决了这个问题 我已将依赖项复制到配置文件中。我有多重依赖关系 这是profile1的代码
<profile>
<id>profile1</id>
<properties>
<environment>value1</environment>
</properties>
<dependency>
<groupId>com.test</groupId>
<artifactId>app-core</artifactId>
<version>1.0.0</version>
<classifier>${environment}</classifier>
</dependency>
</profile>
简介1
价值1
com.test
应用核心
1.0.0
${environment}
这是配置文件2的代码
<profile>
<id>profile2</id>
<properties>
<environment>value2</environment>
</properties>
<dependency>
<groupId>com.test</groupId>
<artifactId>app-core</artifactId>
<version>1.0.0</version>
<classifier>${environment}</classifier>
</dependency>
</profile>
简介2
价值2
com.test
应用核心
1.0.0
${environment}
这是profile3的代码
<profile>
<id>profile3</id>
<properties>
<environment>value3</environment>
</properties>
<dependency>
<groupId>com.test</groupId>
<artifactId>app-core</artifactId>
<version>1.0.0</version>
<classifier>${environment}</classifier>
</dependency>
</profile>
简介3
价值3
com.test
应用核心
1.0.0
${environment}
您是如何启用配置文件的?我解决了这个问题。你的例子不起作用。谢谢