【发布时间】:2012-08-23 21:40:45
【问题描述】:
在我的项目中,我有 maven 依赖项。
顺便说一句:
<dependency>
<groupId>org.mule.modules</groupId>
<artifactId>mule-module-activiti</artifactId>
<version>3.2.0</version>
</dependency>
在这个依赖 POM 中有一个使用但未定义的属性 - ${activiti.version}
我发现如何设置此属性的唯一方法是在命令行上指定它,例如mvn -Dactiviti.version=5.10
有什么方法可以在我的项目的 POM 中指定此属性吗?<properties><activiti.version>5.10</activiti.version></properties> 不起作用。
编辑:
如果您创建具有依赖关系的新 maven 项目,我试图解决的情况可以重现:
<dependency>
<groupId>org.mule.modules</groupId>
<artifactId>mule-module-activiti</artifactId>
<version>3.2.0</version>
</dependency>
并提供所需的存储库:
<repositories>
<repository>
<id>muleforge-repo</id>
<name>MuleForge Repository</name>
<url>http://repository.muleforge.org/release</url>
<layout>default</layout>
</repository>
<repository>
<id>codehaus-repo</id>
<name>Codehaus Repository</name>
<url>http://dist.codehaus.org/mule/dependencies/maven2</url>
<layout>default</layout>
</repository>
<repository>
<id>activiti</id>
<name>Activiti</name>
<url>https://maven.alfresco.com/nexus/content/groups/public/</url>
</repository>
</repositories>
编辑 2:
这是 org.mule.modules:mule-module-activiti:3.2.0 的 POM,我的项目所依赖的库。在这个 pom 内部,他们使用表达式${activiti.version}。但他们不为此表达式设置值。 (没有什么像<properties><activiti.version>5.10</activiti.version></properties>)
问题是如何从 my pom 中为这个表达式设置一个值?
【问题讨论】:
-
使用 pom 的属性部分是最好的解决方案。为什么它对你不起作用?
标签: maven properties dependency-management