2011-12-15 91 views
3

我想知道這是什麼意思:Maven版本標籤

<version>${artifactId.version}</version> 

這是否意味着該版本始終是當前的一個?

回答

3

這意味着版本由<artifactId.version>屬性定義:

<properties> 
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> 
    <artifactId.version>3.0.0.1</artifactId.version> 
</properties> 

在該示例中,版本將是3.0.0.1

請注意,也可以使用<project.build.sourceEncoding>並根據您的項目需要設置相應的版本。

+0

因此,這基本上意味着如果我們將$ {artifactId.version}放入我們的依賴版本中,我們總是會有一個當前版本?而且我們也必須知道這些屬性是否存在於依賴關係中? – ilija

+0

@ilija:不,你仍然需要修改屬性。該屬性應該在聲明依賴關係而不是依賴關係本身的POM中。 – JBert

+0

@ilija BTW:如果你想在你的父POM中指定工件版本,你也可以使用''dependencyManagement>'標籤。有關更多信息,請參閱http://maven.apache.org/pom.html#Dependency_Management。 – JBert

1

您可能會在{artifactId.version}之前缺少$標誌。

這意味着你使用這個artifactId.version變量來確定你的工件的版本。

+0

因此,如果我有依賴關係,並且我想要獲取版本標記中的版本:$ {artifactId.version}。我應該怎麼做? – ilija

1

這意味着你可以指定Maven以外的版本,這是一個常見的情況。

實施例:

mvn <operation> [params...] -DartifactId.version=1.2.3