2016-02-26 38 views
2

這裏是輸出:爲什麼Maven會將dos作爲dos系列檢測到?

mvn enforcer:display-info 

[INFO] Maven Version: 3.3.9 
[INFO] JDK Version: 1.8.0_60 normalized as: 1.8.0-60 
[INFO] OS Info: Arch: amd64 Family: dos Name: windows 7 Version: 6.1 

OS的名字是Windows 7,但家庭是dos

這是一個錯誤或maven總是認爲Windows家庭作爲DOS?

+0

你使用哪個版本的maven-enforcer-plugin? – khmarbaise

+0

有效的pom不包含這樣的信息,'maven-enforcer-plugin' itsefl沒有包含這個目標。你能告訴我怎麼看這個版本嗎? – Cherry

+0

在構建期間有輸出告訴你。 – khmarbaise

回答

-2

根據Maven Doc,可以在構建項目時使用構建配置文件的數量。 輪廓之一是OS設置它包含以下配置:

<profiles> 
    <profile> 
    <activation> 
     <os> 
     <name>Windows XP</name> 
     <family>Windows</family> 
     <arch>x86</arch> 
     <version>5.1.2600</version> 
     </os> 
    </activation> 
    ... 
    </profile> 
</profiles> 

參考:http://maven.apache.org/guides/introduction/introduction-to-profiles.html

在這裏你可以指定家庭應該是由下列值名稱: 可能的家庭是:

dos 
mac 
netware 
os/2 
tandem 
unix 
windows 
win9x 
z/os 
os/400 

參考:https://maven.apache.org/enforcer/enforcer-rules/requireOS.html

基於這些設置,您可以構建與操作系統相關的配置文件。 可以使用-P CLI選項明確指定配置文件。

我希望這會有所幫助。順便說一句好問題。

+1

謝謝,我已閱讀文檔,但問題不是關於可能支持的家庭,而是關於爲什麼它檢測到Windows作爲dos。 – Cherry

+0

對於您的情況,OS系列的默認設置可能會設置爲'dos'。 – Suyash