因此,基本上,你你把:
放入當前項目目錄。 gradle-wrapper.jar來自您當地的Gradle發行版。 You can check this in the source code
URL jarFileSource = Wrapper.class.getResource("/gradle-wrapper.jar");
if (jarFileSource == null) {
throw new GradleException("Cannot locate wrapper JAR resource.");
}
GFileUtils.copyURLToFile(jarFileSource, jarFileDestination);
當您運行gradle wrapper
調用從罐子主類,以下載並運行搖籃。因此,從技術上講,您可以修改SH和BASH腳本,以便在Java執行之前從Github存儲庫下載封裝器文件,顯然只有當該文件不存在時纔可以。我實際上做了它,它的工作,但我不知道它可能是多麼容易出錯。我不知道Github是否將來不會更改URL。我只是在gradlew.sh的某處添加了以下代碼段。在CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar
線
if [ ! -f "gradle/wrapper/gradle-wrapper.jar" ]
then
curl https://raw.githubusercontent.com/gradle/gradle/master/gradle/wrapper/gradle-wrapper.jar -o $APP_HOME/gradle/wrapper/gradle-wrapper.jar
fi
反正之前,包裝文件有56K,它的目的是要儘可能小,讓人們把它變成Git倉庫。話雖這麼說,我認爲你不應該擔心它,只是添加這種特殊的JAR文件添加到白名單,以您的掛鉤,並允許它在資源庫中,
謝謝,我會給這個鏡頭。我們將從我們自己的內部遠程服務器發佈,以便可以工作。我也有點閱讀包裝腳本,也許我可以將它移植到某個東西上。另一個想法是一個克隆鉤子,它檢測gradlew文件是否在那裏,並將它重新定位在克隆上。我會玩,看看它做了什麼。我們專門設計了沒有白名單的我們的罐式過濾系統,因爲他們在這裏受到虐待的長期和高貴的習慣。 – scphantm