API 文件 | MavenArtifactRepository |
---|
一種 Artifact 倉庫,使用 Maven 格式來儲存 Artifact 和元數據。
此類型的倉庫由 RepositoryHandler.maven(org.gradle.api.Action)
方法群組建立。
屬性 | 描述 |
allowInsecureProtocol | 指定是否可以接受透過不安全的 HTTP 連線與倉庫進行通訊。 |
artifactUrls | 用於尋找 Artifact 檔案的其他 URL。請注意,這些 URL 不用於尋找 POM 檔案。 |
authentication | 此倉庫的驗證方案。 |
credentials | 用於驗證此倉庫的指定類型憑證。 |
name | 此倉庫的名稱。名稱在倉庫集合中必須是唯一的。如果未提供名稱,則會為倉庫提供預設名稱。 |
url | 此倉庫的基本 URL。此 URL 用於尋找 POM 和 Artifact 檔案。您可以使用 |
方法 | 描述 |
artifactUrls(urls) | 新增一些額外的 URL,用於尋找 Artifact 檔案。請注意,這些 URL 不用於尋找 POM 檔案。 |
authentication(action) | 設定此倉庫的驗證方案。 |
credentials(credentialsType) | 設定此倉庫的憑證,這些憑證將由建置提供。 |
credentials(credentialsType, action) | 使用提供的 action 設定此倉庫的憑證。 |
credentials(action) | 使用提供的 action 設定此倉庫的使用者名稱和密碼憑證。 |
metadataSources(configureAction) | 設定此倉庫的元數據來源。此方法將取代任何先前設定的元數據來源。 |
指定是否可以接受透過不安全的 HTTP 連線與倉庫進行通訊。
基於安全考量,這項設定刻意要求使用者在個別情況下選擇加入使用不安全協定。
Gradle 刻意不提供全域系統/gradle 屬性來全面停用此檢查。
允許透過不安全協定進行通訊,可能會讓中間人冒充預期的伺服器,並讓攻擊者能夠 將惡意可執行程式碼提供到系統上。
AuthenticationContainer
authentication
(唯讀)
此倉庫的驗證方案。
URI
url
此倉庫的基本 URL。此 URL 用於尋找 POM 和 Artifact 檔案。您可以使用 MavenArtifactRepository.setArtifactUrls(java.lang.Iterable)
新增其他 URL,用於尋找 Artifact 檔案,例如 jar 檔。
void
artifactUrls
(Object
...
urls)
Object
...新增一些額外的 URL,用於尋找 Artifact 檔案。請注意,這些 URL 不用於尋找 POM 檔案。
提供的value會根據 Project.uri(java.lang.Object)
進行評估。這表示,例如,您可以傳入 File
物件,或相對於專案目錄評估的相對路徑。
void
authentication
(Action
<? super AuthenticationContainer
>
action)
Action
<? super AuthenticationContainer
>設定此倉庫的驗證方案。
此方法針對此專案的 AuthenticationContainer
執行給定的 action。AuthenticationContainer
作為 closure 的委派傳遞給 closure。
如果沒有為此倉庫指派任何驗證方案,則會根據倉庫的傳輸方案使用預設的驗證方案集。
repositories {
maven {
url = "https://example.com/m2"
authentication {
basic(BasicAuthentication)
}
}
}
支援的驗證方案類型擴展 Authentication
。
void
credentials
(Class
<? extends Credentials
>
credentialsType)
Class
<? extends Credentials
>設定此倉庫的憑證,這些憑證將由建置提供。
憑證將從基於倉庫名稱的 Gradle 屬性提供。如果無法解析此倉庫的憑證,並且倉庫將在目前的建置中使用,則建置將無法啟動並指向遺失的組態。
repositories {
maven {
url = "https://example.com/m2"
credentials(PasswordCredentials)
}
}
目前 credentialsType
引數支援以下憑證類型
使用提供的 action 設定此倉庫的憑證。
如果沒有為此倉庫指派任何憑證,則會為此倉庫指派指定類型的空憑證集,並提供給組態 action。如果已為此倉庫指定憑證,則會將其傳遞給給定的組態 action。
repositories { maven { url = "https://example.com/aws/proxy" credentials(AwsCredentials) { accessKey = "myAccessKey" secretKey = "mySecret" } } }
目前 credentialsType
引數支援以下憑證類型
void
credentials
(Action
<? super PasswordCredentials
>
action)
Action
<? super PasswordCredentials
>使用提供的 action 設定此倉庫的使用者名稱和密碼憑證。
如果沒有為此倉庫指派任何憑證,則會為此倉庫指派一組空的使用者名稱和密碼憑證,並傳遞給 action。
repositories { maven { url = "https://example.com/m2" credentials { username = 'joe' password = 'secret' } } }
void
metadataSources
(Action
<? super MetadataSources
>
configureAction)
Action
<? super MetadataSources
>設定此倉庫的元數據來源。此方法將取代任何先前設定的元數據來源。