2013-10-18 73 views
1

我正在使用Grails項目,該項目將使用存儲在需要身份驗證憑證的專用Maven/Nexus存儲庫中的多個Maven/Java工件。但是,我不知道如何將Grails配置爲使用必要的用戶名和密碼指向存儲庫。如何配置Grails以從受密碼保護的Maven/Nexus存儲庫下載依賴項?

如何配置Grails以使用此存儲庫?

以下是我的Maven settings.xml中存儲庫配置的片段。

... 
<repository> 
    <id>private-releases</id> 
    <name>Private Releases</name> 
    <releases> 
    <enabled>true</enabled> 
    <updatePolicy>daily</updatePolicy> 
    </releases> 
    <snapshots> 
    <enabled>false</enabled> 
    </snapshots> 
    <url>http://mycompany/nexus/content/groups/private-releases</url> 
    <layout>default</layout> 
</repository> 
... 
<server> 
    <id>private-releases</id> 
    <username>username_here</username> 
    <password>password_here</password> 
</server> 
... 
+1

您是否在使用Grails內置的構建系統(與Gradle無關)? –

+0

彼得 - 好問題。我將編輯該問題。它使用內置的Grails構建系統。 – plusjeff

回答

1

提供一個憑據阻止主機:

credentials { 
    realm = "Private Releases" 
    host = "<host>" 
    username = "<user>" 
    password = "<password>" 
} 

當回購協議被訪問,Grails將查找憑證塊匹配的主機。在this mailing list thread找到更多的信息。

+0

爲了記錄,從安全的角度來看,我不認爲這個建議是好的。您通常不想在構建文件中包含用戶名/密碼的詳細信息。您可以將其外化,請參閱此處:http://chimera.labs.oreilly.com/books/1234000001741/ch04.html#_buildscript_dependencies –

相關問題