Разрешение плагина покрытия Scala sbt с прокси-сервером Nexus

Я использую плагин охвата в своем проекте project/plugins.sbt:

addSbtPlugin("org.scoverage" % "sbt-scoverage" % "1.5.1")

Это прекрасно решается, когда я не использую связь нашей компании.

Чтобы протестировать наш прокси-сервер Nexus, я добавил ниже в ~./sbt/repositories:

[repositories]
    local
    maven-releases: https://repo.example.net/nexus/repository/proxy-central.maven.org/
    ivy-releases: https://repo.example.net/nexus/repository/proxy-repo.typesafe.com/typesafe/ivy-releases/, [organization]/[module]/(scala_[scalaVersion]/)(sbt_[sbtVersion]/)[revision]/[type]s/[artifact](-[classifier]).[ext]
    sbt-plugin-releases: https://repo.example.net/nexus/repository/proxy-repo.scala-sbt.org/scalasbt/sbt-plugin-releases/, [organization]/[module]/(scala_[scalaVersion]/)(sbt_[sbtVersion]/)[revision]/[type]s/[artifact](-[classifier]).[ext]

Я удаляю ~./ivy2/cache и когда пытаюсь скомпилировать:

[warn] ==== maven-releases: tried
[warn]   https://repo.jamba.net/nexus/repository/proxy-central.maven.org/org/scoverage/sbt-scoverage_2.12_1.0/1.5.1/sbt-scoverage-1.5.1.pom
[warn] ==== ivy-releases: tried
[warn]   https://repo.jamba.net/nexus/repository/proxy-repo.typesafe.com/typesafe/ivy-releases/org.scoverage/sbt-scoverage/scala_2.12/sbt_1.0/1.5.1/ivys/ivy.xml
[warn] ==== sbt-plugin-releases: tried
[warn]   https://repo.jamba.net/nexus/repository/proxy-repo.scala-sbt.org/scalasbt/sbt-plugin-releases/org.scoverage/sbt-scoverage/scala_2.12/sbt_1.0/1.5.1/ivys/ivy.xml

    [warn]  ::::::::::::::::::::::::::::::::::::::::::::::
    [warn]  ::          UNRESOLVED DEPENDENCIES         ::
    [warn]  ::::::::::::::::::::::::::::::::::::::::::::::
    [warn]  :: org.scoverage#sbt-scoverage;1.5.1: not found
    [warn]  ::::::::::::::::::::::::::::::::::::::::::::::
    [warn] 
    [warn]  Note: Some unresolved dependencies have extra attributes.  Check that these dependencies exist with the requested attributes.
    [warn]      org.scoverage:sbt-scoverage:1.5.1 (scalaVersion=2.12, sbtVersion=1.0)

Я заметил, что покрытие sbt имеет структуру каталогов, которая включает версию scala и sbt: https://repo1.maven.org/maven2/org/scoverage/sbt-scoverage_2.12_1.0/1.5.1/sbt-scoverage-1.5.1.pom

Я также пытался изменить project/plugins.sbt безрезультатно:

addSbtPlugin("org.scoverage" % "sbt-scoverage" % "1.5.1", scalaVersion="2.12", sbtVersion="1.0")

Есть ли причина, по которой мой прокси-сервер maven не загружает этот плагин из центра maven (хотя он явно существует)

Примечание: разрешение прокси работает для выпусков в стиле ivy и других выпусков maven.

РЕДАКТИРОВАТЬ: Примечание I: Разрешение артефактов без использования прокси (непосредственно из центра maven) работает отлично. Вот как я пришел к выводу, что в конфигурации прокси должно быть что-то не так. Любые/все указатели будут полезны. Примечание II: Разрешение других артефактов (включая плагин sbt-assembly, сам sbt, scala-reflect и т. д. отлично работает с моим прокси)


person irrelevantUser    schedule 19.06.2019    source источник
comment
Этот плагин единственный артефакт, который не скачивается? Все ли работает, когда вы удаляете этот плагин из project/plugins.sbt (и его настройки из build.sbt).   -  person Grzegorz Slowikowski    schedule 22.06.2019
comment
Да, это единственный артефакт, который не скачивается. Все остальное просто работает через наш прокси.   -  person irrelevantUser    schedule 23.06.2019
comment
SBT и большинство подключаемых модулей SBT не развернуты в Maven Central. Я думаю, должно быть что-то не так с конфигурацией центрального прокси-сервера Maven в вашем Nexus. Можете ли вы попытаться собрать любой простой проект Maven, чтобы увидеть, не сработает ли он?   -  person Grzegorz Slowikowski    schedule 25.06.2019
comment
Да, вы делаете хорошее замечание. Однако я вижу плагин покрытия в центральном maven repo1.maven.org/maven2/org/scoverage/sbt-scoverage_2.12_1.0/: я также пытался создать проект с помощью maven и столкнулся с той же проблемой. Я подозреваю, что это связано с суффиксом 2.12_1.0 в sbt-scoverage_2.12_1.0. Я просто упускаю информацию о конфигурации прокси, которая могла бы здесь помочь.   -  person irrelevantUser    schedule 25.06.2019
comment
К вашему сведению, это было решено, просто установив макет прокси-сервера Nexus на permissive!   -  person irrelevantUser    schedule 25.06.2019


Ответы (1)


Установите разрешающий макет прокси-сервера Nexus Nexus

person irrelevantUser    schedule 26.06.2019