2014-09-01 45 views
2

我試圖創建空的Maven Web項目與現有的目錄生成achetype(從github上項目實際上,它是空的,並且只包含自述文件)。在Maven的存在目錄

但行家看來,以檢測是否存在目錄和失敗,錯誤:

[ERROR] Failed to execute goal org.apache.maven.plugins:maven-archetype-plugin:2.2:generate (default-cli) on project standalone-pom: Directory loms already exists - please run from a clean directory -> [Help 1] 

任何機會,以迫使行家使用現有的目錄?

調用命令:

mvn archetype:generate -DgroupId=org.reaver.devs -DartifactId=loms -DarchetypeArtifactId=maven-archetype-webapp -DinteractiveMode=false 
+0

爲什麼不在創建項目之前簡單地刪除該目錄? – Seelenvirtuose 2014-09-01 06:55:07

+1

@Seelenvirtuose由於該目錄已經包含'.git'目錄,我猜... – Riduidel 2014-09-01 09:38:35

回答

0

由於目錄已經存在,Maven將無法生成具有相同名稱的另一產物項目。而且,由於你的的LOM目錄是一個Git項目,這是不能接受的,刪除它,你可以按照一個取巧的辦法:

  • 生成一個項目,你需要的原型,但與diferrent工件名稱(只是將服務作爲交換目錄):

    mvn archetype:generate -DgroupId=org.reaver.devs \ 
             -DartifactId=loms-2 \ 
             -DarchetypeGroupId=org.apache.maven.archetypes \ 
             -DarchetypeArtifactId=maven-archetype-webapp \ 
             -DinteractiveMode=false 
    
  • 上面的命令將產生與Maven自然一個新的目錄,它在你期待什麼,你的LOM項目絕對適合,預計<artifactId>的pom.xml必須更新爲的LOM(請注意,我將使用命令行,但你可以使用任何可視化工具來更新文件):

    vi pom.xml 
    
  • 取出-2 suffixe在artifactId所以它匹配loms

  • 複製所有文件/下的LOM-2/目錄到項目目錄的LOM/文件夾。

  • 現在您已經初始化了您的項目。

+0

嗯,我知道棘手的方法。實際上,如果rename已經存在目錄到臨時名稱和創建loms項目,你真的沒有必要在合併後正確的pom.xml。但問題是如何做到這一點沒有技巧,仰臥起坐,黑客。 maven的一些選項。 – 2014-09-04 08:55:42

+0

然後Maven沒有選項。 – tmarwen 2014-09-04 11:32:24