Как изменить версию «оболочки gradle по умолчанию» в IntelliJ IDEA?


94

Я хочу использовать Gradle 1.10 вместо 1.9. Кажется, я не могу найти, где это изменить.

Если я поставлю это:

task wrapper(type: Wrapper) {
    gradleVersion = '1.10'
}

в моем build.gradleи rebuild он снова построен с Gradle 1.9 (так что на самом деле ничего не происходит).

Кажется, это все настройки: (и раздел справки IntelliJ о Gradle совсем не помогает :() Что значит «не настроено для текущего» проекта?


1
Вы регенерировали обертку gradle(w) wrapperпосле замены gradleVersion?
Питер Нидервизер

2
пробовали это: stackoverflow.com/questions/24460299/… просто удалите файлы оболочки, а затем wrapperснова выполните задачу
Конец

Не нужно удалять какие-либо файлы.
Питер Нидервизер

1
Задачи Gradle можно запускать из IntelliJ, поэтому вы также должны иметь возможность запускать задачу оболочки. Кроме того, возможно, именно об этом и идет речь о «использовании настраиваемой оболочки Gradle» (но я не уверен).
Питер Нидервизер

1
Спасибо, ребята, за вашу помощь, мне удалось заставить его работать, перейдя на настраиваемую оболочку gradle и восстановив оболочку, выполнив wrapperзадачу. Тем не менее, я все еще не понимаю, что такое обертка по умолчанию .
Bloke

Ответы:


111

Самый простой способ - выполнить следующую команду из командной строки (см. Обновление Gradle Wrapper в документации):

./gradlew wrapper --gradle-version 5.5

Более того, вы можете использовать --distribution-typeпараметр со значением binили, allчтобы выбрать тип распределения. Используйте allтип распространения, чтобы избежать подсказки от IntelliJ IDEA или Android Studio, которая предложит вам загрузить Gradle с исходниками:

./gradlew wrapper --gradle-version 5.5 --distribution-type all

Или вы можете создать индивидуальную wrapperзадачу

task wrapper(type: Wrapper) {
    gradleVersion = '5.5'
}

и беги ./gradlew wrapper.


2
При запуске задачи в корневом проекте, который содержит подпроекты, запустите ./gradlew :wrapperс двоеточием перед именем задачи.
Филипп

36

Откройте файл gradle/wrapper/gradle-wrapper.propertiesв своем проекте. Измените версию в, distributionUrlчтобы использовать версию, которую вы хотите использовать, например,

distributionUrl=https\://services.gradle.org/distributions/gradle-2.10-all.zip

4
лучше использовать задачу gradle, которую они создали для этой цели, чтобы скрипты обновлялись правильно и т. д.
dabluck

они также обновляют свои двоичные файлы и скрипты, которые вы не получите, если не запустите задачу обновления. потенциально это может создать несовместимость
dabluck

1
Ага. См. Раздел Обновление Gradle Wrapper в документации Gradle.
Lu55

4

Я просто хотел сказать, что ударил это после обновления компонентов Android Studio.

Для меня сработало открытие gradle-wrapper.properties и обновление используемой версии gradle. На данный момент для моих проектов строка гласит:

distributionUrl=https\://services.gradle.org/distributions/gradle-4.5-all.zip

3

./gradlew wrapper --gradle-version=5.4.1 --distribution-type=bin

https://gradle.org/install/#manually

Проверить:

 ./gradlew tasks

Чтобы ввести его без команды:

перейти к-> gradle/wrapper/gradle-wrapper.properties URL-адрес распространения и измените его на обновленную версию zip-архива

выход:

 ./gradlew tasks
Downloading https://services.gradle.org/distributions/gradle-5.4.1-bin.zip
...................................................................................

Welcome to Gradle 5.4.1!

Here are the highlights of this release:
 - Run builds with JDK12
 - New API for Incremental Tasks
 - Updates to native projects, including Swift 5 support

For more details see https://docs.gradle.org/5.4.1/release-notes.html

Starting a Gradle Daemon (subsequent builds will be faster)

> Starting Daemon 


1

Задача-оболочка в gradle вызывается, если используется команда gradlew, если вы используете команду gradle для создания задачи-оболочки, не вызывается. Итак, есть два способа изменить версию Gradle.

  1. Используйте команду 'gradlew build', эта команда вызовет указанную вами задачу оболочки. Эта задача изменит параметр distributionUrl в файле gradle-wrapper.properties и автоматически загрузит нужную вам версию gradle. Пример distributionUrl в файле для версии 4.2. distributionUrl = https: //services.gradle.org/distributions/gradle-4.2-bin.zip

  2. Если вы не используете оболочку gradle, просто загрузите нужную версию gradle и установите путь к переменной среды, а также покажите ее IDEA.

PS для получения дополнительной информации о оболочке gradle я предлагаю вам прочитать: https://docs.gradle.org/current/userguide/gradle_wrapper.html


1

Я столкнулся с той же проблемой при изменении версии gradle по умолчанию с 5.0 на 4.7. Ниже приведены шаги по изменению версии gradle по умолчанию в intellij 1) Измените версию gradle в gradle / wrapper / gradle-wrapper.properties в этом свойстве distributionUrl 2) Нажмите кнопку обновления в меню проектов Gradle, чтобы начать загрузку новой версии Gradle Zipвведите описание изображения здесь



0

Во-первых, позвольте gradle установить правильный URL-адрес распределения

cd projectDirectory
./gradlew wrapper --gradle-version 2.3.0

Затем - может быть, не нужно, но это то, что я сделал - отредактируйте build.gradle проекта, чтобы он соответствовал версии

    dependencies {
    classpath 'com.android.tools.build:gradle:2.3.0'

    // NOTE: Do not place your application dependencies here; they belong
    // in the individual module build.gradle files
}

Наконец, удалите папки .gradle и gradle, а также файлы gradlew и gradlew.bat. ( Оригинальный ответ )

Теперь перестройте проект.

Поскольку других ответов мне было недостаточно, и комментарий, указывающий на эти дополнительные шаги, легко упустить из виду, здесь как отдельный ответ

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.