Ошибка при сборке Spring security из исходного кода

#java #gradle #spring-security #compilation

#java #gradle #spring-security #Сборник

Вопрос:

Мне нужно создать Spring security из исходного кода для моих экспериментов. Я выполнил команду $./gradlew install , следуя ее руководству в github github: spring-security. Однако он возвращает следующие ошибки:

 FAILURE: Build failed with an exception.

* What went wrong:
Could not determine the dependencies of task ':spring-security-config:compileKotlin'.
> Could not resolve all files for configuration ':spring-security-config:kotlinCompilerClasspath'.
   > Could not resolve org.jetbrains.kotlin:kotlin-compiler-embeddable:1.4.10.
     Required by:
         project :spring-security-config
      > Could not resolve org.jetbrains.kotlin:kotlin-compiler-embeddable:1.4.10.
         > Could not get resource 'https://repo.spring.io/libs-snapshot/org/jetbrains/kotlin/kotlin-compiler-embeddable/1.4.10/kotlin-compiler-embeddable-1.4.10.pom'.
            > Could not HEAD 'https://repo.spring.io/libs-snapshot/org/jetbrains/kotlin/kotlin-compiler-embeddable/1.4.10/kotlin-compiler-embeddable-1.4.10.pom'. Received status code 401 from server: Unauthorized
   > Could not resolve org.jetbrains.kotlin:kotlin-bom:1.4.10.
     Required by:
         project :spring-security-config
      > Could not resolve org.jetbrains.kotlin:kotlin-bom:1.4.10.
         > Could not get resource 'https://repo.spring.io/libs-snapshot/org/jetbrains/kotlin/kotlin-bom/1.4.10/kotlin-bom-1.4.10.pom'.
            > Could not GET 'https://repo.spring.io/libs-snapshot/org/jetbrains/kotlin/kotlin-bom/1.4.10/kotlin-bom-1.4.10.pom'. Received status code 401 from server: Unauthorized

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Get more help at https://help.gradle.org

Deprecated Gradle features were used in this build, making it incompatible with Gradle 7.0.
Use '--warning-mode all' to show the individual deprecation warnings.
See https://docs.gradle.org/6.6.1/userguide/command_line_interface.html#sec:command_line_warnings

BUILD FAILED in 3m 53s
  

В чем причина? Как это исправить?

Ответ №1:

Проблема заключается в ошибке Gradle:

Получен код состояния 401 с сервера: несанкционированный

Проект пытается разрешить зависимости с помощью https://repo.spring.io/libs-snapshot который отклоняется со 401 статусом HTTP.

Вероятно, это сбой из-за недавних ограничений, введенных командой Spring infrastructure. Подробнее см. Сообщение в блоге: https://spring.io/blog/2020/10/29/notice-of-permissions-changes-to-repo-spring-io-fall-and-winter-2020

Потенциальным решением является изменение репозиториев проекта таким образом, чтобы использовались общедоступные репозитории, такие как Maven Central или JCenter. Более подробную информацию см. в документации Gradle.

Нет никаких гарантий, что это сработает, если для сборки Spring Security требуются артефакты, доступные только в закрытых репозиториях Spring.