Убедитесь, что у вас установлены JDK 21 (или более новая версия) и Git.
java -version
git --version
Вместо использования локально установленного Maven, вызовите скрипт-обёртку Maven mvnw
в главной папке проекта. Это позволит использовать версию Maven, поддерживаемую данным проектом.
Сначала клонируйте репозиторий Keycloak:
git clone https://github.com/keycloak/keycloak.git
cd keycloak
Чтобы собрать Keycloak, выполните:
./mvnw clean install
Это соберёт все модули и запустит набор тестов.
Чтобы собрать Keycloak с адаптерами, выполните:
./mvnw clean install -Pdistribution
Чтобы собрать только сервер, выполните:
./mvnw -pl quarkus/deployment,quarkus/dist -am -DskipTests clean install
Затем вы можете найти ZIP-дистрибутив в папке quarkus/dist/target
.
Примечание
Классы из пакетов org.keycloak.testsuite.*
не подходят для использования в продакшене.
Этот проект поддерживает инкрементные сборки Maven с использованием расширения Apache Maven Build Cache Extension, которое по умолчанию отключено.
Чтобы включить его для одного выполнения команды Maven, включите его следующим образом:
./mvnw -D -Dmaven.build.cache.enabled=true ...
Чтобы включить его по умолчанию, добавьте его в переменную среды MAVEN_OPTS
:
export MAVEN_OPTS="-Dmaven.build.cache.enabled=true"
Для запуска Keycloak во время разработки сначала соберите, как указано выше, затем выполните:
java -jar quarkus/server/target/lib/quarkus-run.jar start-dev
Чтобы остановить сервер, нажмите Ctrl + C
.
Дополнительные сведения см. в документации модуля quarkus
.
В настоящее время мы не применяем определённый стиль кода в Keycloak, но хорошим ориентиром является стиль кода, используемый WildFly. Его можно получить из Wildfly ide-configs. Чтобы импортировать правила форматирования, следуйте инструкциям.
Если ваши изменения требуют обновления базы данных, прочитайте Обновление схемы базы данных.
Если вашим изменениям требуется введение новых зависимостей или обновление версий зависимостей, пожалуйста, сначала обсудите это на списке рассылки разработчиков. Мы не принимаем новые зависимости легкомысленно, поэтому старайтесь использовать то, что доступно.
Некоторые части проекта полагаются на сгенерированный код с помощью плагинов Maven. Эти шаги могут быть пропущены при сборке с использованием IDE, что приведёт к ошибкам компиляции. Чтобы обойти это, убедитесь, что вы сначала собрали проект с помощью Maven. После первоначальной сборки с Maven вы сможете собрать проект с помощью IDE, поскольку он будет использовать классы, ранее сгенерированные плагинами Maven. Убедитесь, что вы не пересобираете весь проект с помощью IDE, так как это удалит сгенерированные классы. Например, в IntelliJ IDEA используйте Build → Build Project
вместо Build → Rebuild Project
.
Примечание
Если вы собираете Operator из своей IDE, обязательно соберите проект с включённым профилем operator
в Maven, так как он исключён по умолчанию:
./mvnw clean install -Poperator -DskipTests
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Опубликовать ( 0 )