Поиск…


Грейд-обертка и Гит

Как обсуждалось во введении, функциональность оболочки градиента работает, потому что в проект будет gradlew который будет использоваться при gradlew команды gradlew . Однако это может не произойти, и после того, как в следующий раз проект будет извлечен, gradlew не будет работать с ошибкой:

Error: Could not find or load main class org.gradle.wrapper.GradleWrapperMain

Это будет связано с тем, что ваш .gitignore, скорее всего, включает *jar для проектов Java. Когда оболочка градиента была инициализирована, она копируется в файл gradle/wrapper/gradle-wrapper.jar . Таким образом, вам нужно добавить его в индекс git и зафиксировать его. Сделайте это с помощью:

git add -f gradle/wrapper/gradle-wrapper.jar
git ci

С -f , чтобы заставить его.

Введение

Gradle имеет возможность добавлять обертку к проектам. Эта оболочка устраняет необходимость использования всеми пользователями или системами непрерывной интеграции Gradle. Он также предотвращает проблемы с версиями, когда существует некоторая несовместимость между версией, которую использует проект, и тем, что пользователи установили. Он делает это, устанавливая версию градиента локально в проекте.

Пользователи проекта просто запускают:

> ./gradlew <task> # on *Nix or MacOSX
> gradlew <task>   # on Windows

Чтобы настроить проект на использование обертки, разработчики:

  1. Выполнение:
gradle wrapper [--gradle-version 2.0]

Где --gradle-version X является необязательной и, если она не указана (или задача оболочки не включена, как показано ниже), используемая версия является используемой версией градиента.

  1. Чтобы заставить проект использовать определенную версию, добавьте следующее в build.gradle :
task wrapper(type: Wrapper) {
    gradleVersion = '2.0'
}

Когда выполняется gradle wrapper она создает файлы:

the_project/
  gradlew
  gradlew.bat
  gradle/wrapper/
    gradle-wrapper.jar
    gradle-wrapper.properties

Официальная документация по этой функции находится по адресу https://docs.gradle.org/current/userguide/gradle_wrapper.html .

Использовать локально поданный Грейдл в Обтекателе Грейдл

Если вы хотите сохранить локальную копию Gradle и позволить Wrapper использовать ее в сборках, вы можете установить distributionUrl указывающий на вашу копию в задаче wrapper :

task wrapper(type: Wrapper) {
    gradleVersion = '2.0'
    distributionUrl = "http\://server/dadada/gradle-${gradleVersion}-bin.zip"
}

после выполнения gradle wrapper оболочки gradlew сценарий оболочки gradlew а параметр gradle/wrapper/gradle-wrapper.properties настроен на использование предоставленного URL для загрузки Gradle.

Использование оберточной машины за прокси-сервером

В первый раз, когда пользователь запускает gradlew проекта, следует понимать, что он будет делать две ключевые вещи:

  1. Убедитесь, что версия градиента, используемая оберткой, уже находится в ~ / .gradle / wrapper / dists
  2. Если нет, загрузите архив версии из Интернета

Если вы находитесь в среде, которая требует, чтобы весь внешний трафик проходил через прокси-сервер, второй шаг будет терпеть неудачу (если только это не прозрачная среда прокси). В результате вы должны убедиться, что у вас установлены параметры прокси-сервера JVM .

Например, если у вас есть базовая настройка прокси без аутентификации, просто установите переменную среды JAVA_OPTS или GRADLE_OPTS с помощью:

-Dhttps.proxyPort=<proxy_port> -Dhttps.proxyHost=<hostname>

Таким образом, завершенный пример для окон:

set JAVA_OPTS=-Dhttps.proxyPort=8080 -Dhttps.proxyHost=myproxy.mycompany.com

Если, однако, ваша среда также требует аутентификации, вы также захотите просмотреть свои другие параметры на странице https://docs.oracle.com/javase/8/docs/api/java/net/doc-files/net-properties. html .

ПРИМЕЧАНИЕ. Эта конфигурация прокси-сервера дополняет любую конфигурацию прокси-сервера для доступа к репозиториям зависимостей.



Modified text is an extract of the original Stack Overflow Documentation
Лицензировано согласно CC BY-SA 3.0
Не связан с Stack Overflow