Android Studio: “Gebruik standaard gradle-wrapper” versus “Gebruik aanpasbare gradle-wrapper”

Wat is precies het verschil tussen de Gradle-opties van Android Studio:

Android Studio->Preferences->Gradle

Use default gradle wrapper (recommended)en Use customizable gradle wrapper?

Achtergrond:

Ik werk aan een Android-project in Android Studio en gebruik een Gradle-wrapper.

Als ik echter de Android Studio-instellingen “Gebruik aanpasbare gradlew-wrapper” gebruik, elke keer dat mijn teamleden het Android Studio-project synchroniseren met de gui-opdracht:

voer hier de afbeeldingsbeschrijving in

ze vinden dat de gradle/wrapper/gradle-wrapper.propertiesdatum wordt bijgewerkt (en wat resulteert in een extra diffs op de git repo).

Overschakelen naar “Gebruik standaard gradle wrapper” lijkt dit probleem op te lossen.


Antwoord 1, autoriteit 100%

Bekijk de IntelliJ IDEA-help hier:

  • Het gebruik van de standaard gradle-wrapper betekent dat Gradle het versienummer beheert
  • Het gebruik van de aanpasbare gradle-wrapper betekent dat IDEA het versienummer van de gradle-wrapper beheert.

Het versienummer wordt opgeslagen in gradle/wrapper/gradle-wrapper.properties. Dus als u elke keer dat u het project opent met IDEA kiest voor “de aanpasbare gradle-wrapper gebruiken”, wordt het eigenschappenbestand gewijzigd om de wrapperversie aan te passen die u in het IDEA-project hebt opgegeven.

Omwille van herhaalbare builds (zelfs op uw continue build-server waarop IDEA niet draait), laat Gradle het versienummer beheren en gebruik de standaard gradle-wrapper.

Je kunt het versienummer dat door Gradle wordt gebruikt in je build.gradleinstellen met

// needs at least Gradle V1.7
wrapper {
    gradleVersion = '2.2.1'
}

of

// works with every Gradle version
task wrapper(type: Wrapper) {
    gradleVersion = '2.2.1'
}

Opmerking:vergeet niet dat deze configuratie alleen wordt gebruikt voor het genereren van de wrapper. Om het te activeren, moet je de generatie uitvoeren met gradlew wrapper. Deze taak werkt de gradle-wrapper.propertiesbij die daarna wordt gebruikt voor alle wrapper-uitvoeringen.

Other episodes