2014-09-18 37 views
1

這裏還在學習gradle。尋找一種獲得給定範圍的最新「任何東西」(快照/整合或發佈)或最新的必須發佈的方式,例如[1.0,2.0)。有沒有一種方法來指定?到處搜索,只發現使用範圍(這似乎不允許我限制爲發佈或使用快照)或始終使用「latest.integration」和/或「latest.release」完全打開它的引用。如何將Gradle的「latest.integration」或「latest.release」約束到一個範圍?

請幫忙!

回答

1

好吧,我剛剛更新到最新的Gradle 2.1。這解決了我遇到的一些問題。否則,我發現以下內容:

「latest.integration」將匹配最新的任何內容 - 快照或發佈,無論它發現更新。

「latest.release」將匹配最新版本並跳過快照。

「major.minor。+」(無論您有多少個版本號段)實際上都會被限制爲major.minor的「latest.integration」。本來我認爲它只限於發佈,但是,不,它實際上也匹配快照。

「[1.0,2.0)」實際上也會在該範圍內顯示「latest.integration」列表,並且會包含快照,這與我上面提到的不同。因此,我現在不知道如何做的是如何限制一個範圍或「1. +」發佈,但這不是我的直接問題(可能是從現在開始的幾個小時,大聲笑)。

UPDATE

一個限制版本的一系列辦法似乎是與「組件元規則」爛攤子。不匹配的版本(超出範圍的版本)可以被人爲地聲明爲非版本。這實在是太醜了,但...

更新2

我困惑的一部分是由於舊的搖籃,我使用和新的2.1一個之間的行爲變化。以上是2.1歲的人,我(1.8)沒有像上面那樣表現得乾乾淨淨。

+0

「新」是如何定義的?這絕對不是由實際的時間戳。這不是通過ASCII排序。它似乎是一個過濾的過程,它會忽略包含非數字的版本。但它沒有在任何地方指定。 – nilskp 2018-03-06 18:36:08

1

[1.0,2.0)已經意味着要麼「最新的東西」或「最新的必須釋放」(我認爲後者,但不完全確定)。另一個目前不支持。

+0

謝謝!我的經驗似乎是「範圍內的最新版本」...因爲它似乎沒有得到-SNAPSHOT。有沒有任何建議,我可以如何定製代碼? – Learner 2014-09-19 14:31:50

+0

我沒有意識到自定義代碼的方法。 – 2014-09-19 17:19:39

+0

有沒有辦法我至少可以做類似的事情?也許發現所有版本,自己匹配他們?或者比這更近似的東西,比如半約束(只有最小值,最大值),我可以做另一個? – Learner 2014-09-19 20:37:35

相關問題