К сожалению, ваш пример проекта не работает для меня:
[warn] ::::::::::::::::::::::::::::::::::::::::::::::
[warn] :: UNRESOLVED DEPENDENCIES ::
[warn] ::::::::::::::::::::::::::::::::::::::::::::::
[warn] :: nl.jworks.markdown_to_asciidoc#markdown_to_asciidoc;1.0: not found
[warn] :: ch.netzwerg#paleo-core;0.11.0: not found
[warn] ::::::::::::::::::::::::::::::::::::::::::::::
Однако , если вы внимательно прочитали оригинальную ошибку, вы найдете
[warn] There may be incompatibilities among your library dependencies; run 'evicted' to see detailed eviction warnings.
Обычно это означает, что оба ваших плагина имеют хотя бы одну общую зависимость, но в разных (несовместимых) версиях.
Я бы порекомендовал запустить sbt в ваших проектах project папку и запустить evicted
. Это должно показать вам, если зависимость в одном из ваших плагинов была удалена из-за более новой версии в зависимостях вашего другого плагина.
ОБНОВЛЕНИЕ
ПРИМЕЧАНИЕ Ваша проблема возникает, когда sbt пытается использовать ваши загруженные плагины. Фаза SBT, на которой загружаются плагины, является просто еще одним SBT-проектом внутри вашего фактического проекта, расположенного в каталоге с зловещим названием project
.
Когда вы cd
попадете в этот каталог project
внутри корневого каталога вашего проекта и выполните sbt evicted
вы получите следующий вывод:
[info] Loading global plugins from /home/sascha/.sbt/1.0/plugins
[info] Loading project definition from /home/sascha/dev/sbt-debug-plugin/project/project
[info] Updating ProjectRef(uri("file:/home/sascha/dev/sbt-debug-plugin/project/project/"), "project-build")...
[info] Done updating.
[info] Loading settings for project project from plugins.sbt ...
[info] Set current project to project (in build file:/home/sascha/dev/sbt-debug-plugin/project/)
[info] Updating ...
[warn] Resolving a snapshot version. It's going to be slow unless you use `updateOptions := updateOptions.value.withLatestSnapshots(false)` options.
[info] Out of 1 candidates we found for com.mdsol#sbt-swagger2markup;0.1-SNAPSHOT in sonatype-snapshots, we are choosing sonatype-snapshots.
[info] downloading https://jcenter.bintray.com/nl/jworks/markdown_to_asciidoc/markdown_to_asciidoc/1.0/markdown_to_asciidoc-1.0.jar ...
[info] downloading https://jcenter.bintray.com/ch/netzwerg/paleo-core/0.11.0/paleo-core-0.11.0.jar ...
[info] downloading https://repo1.maven.org/maven2/org/pegdown/pegdown/1.4.2/pegdown-1.4.2.jar ...
[info] downloading https://repo1.maven.org/maven2/org/jsoup/jsoup/1.8.1/jsoup-1.8.1.jar ...
[info] downloading https://repo1.maven.org/maven2/org/parboiled/parboiled-java/1.1.6/parboiled-java-1.1.6.jar ...
[info] downloading https://repo1.maven.org/maven2/org/parboiled/parboiled-core/1.1.6/parboiled-core-1.1.6.jar ...
[info] [SUCCESSFUL ] nl.jworks.markdown_to_asciidoc#markdown_to_asciidoc;1.0!markdown_to_asciidoc.jar (240ms)
[info] [SUCCESSFUL ] org.pegdown#pegdown;1.4.2!pegdown.jar (269ms)
[info] [SUCCESSFUL ] org.parboiled#parboiled-java;1.1.6!parboiled-java.jar(bundle) (606ms)
[info] [SUCCESSFUL ] org.parboiled#parboiled-core;1.1.6!parboiled-core.jar(bundle) (713ms)
[info] [SUCCESSFUL ] ch.netzwerg#paleo-core;0.11.0!paleo-core.jar (723ms)
[info] [SUCCESSFUL ] org.jsoup#jsoup;1.8.1!jsoup.jar (792ms)
[info] Done updating.
[warn] There may be incompatibilities among your library dependencies; run 'evicted' to see detailed eviction warnings.
[warn] Found version conflict(s) in library dependencies; some are suspected to be binary incompatible:
[warn] * com.github.jnr:jnr-constants:0.9.12 is selected over {0.9.9, 0.9.11}
[warn] +- com.github.jnr:jnr-enxio:0.19 (depends on 0.9.11)
[warn] +- com.github.jnr:jnr-unixsocket:0.20 (depends on 0.9.11)
[warn] +- org.jruby:jruby-core:9.2.7.0 (depends on 0.9.11)
[warn] +- com.github.jnr:jnr-posix:3.0.49 (depends on 0.9.9)
[warn] * com.github.jnr:jnr-enxio:0.19 is selected over 0.18
[warn] +- org.jruby:jruby-core:9.2.7.0 (depends on 0.19)
[warn] +- com.github.jnr:jnr-unixsocket:0.20 (depends on 0.18)
[warn] * io.vavr:vavr:0.9.1 is selected over 0.9.0
[warn] +- io.github.swagger2markup:swagger2markup:1.3.3 (depends on 0.9.1)
[warn] +- ch.netzwerg:paleo-core:0.11.0 (depends on 0.9.0)
[warn] * com.google.code.findbugs:jsr305:3.0.1 is selected over 2.0.1
[warn] +- com.github.fge:btf:1.2 (depends on 2.0.1)
[warn] +- com.github.fge:uri-template:0.9 (depends on 2.0.1)
[warn] +- com.github.java-json-tools:json-schema-core:1.2.8 (depends on 2.0.1)
[warn] +- com.github.fge:json-patch:1.6 (depends on 2.0.1)
[warn] +- com.github.fge:msg-simple:1.1 (depends on 2.0.1)
[warn] +- com.github.java-json-tools:json-schema-validator:2.2.8 (depends on 2.0.1)
[warn] +- com.github.fge:jackson-coreutils:1.8 (depends on 2.0.1)
[warn] * com.google.guava:guava:20.0 is selected over 16.0.1
[warn] +- io.swagger:swagger-core:1.5.19 (depends on 20.0)
[warn] +- com.github.fge:uri-template:0.9 (depends on 16.0.1)
[warn] +- com.github.fge:jackson-coreutils:1.8 (depends on 16.0.1)
[info] Here are other dependency conflicts that were resolved:
[info] * joda-time:joda-time:2.9.9 is selected over 2.9.7
[info] +- org.jruby:jruby-core:9.2.7.0 (depends on 2.9.9)
[info] +- com.github.java-json-tools:json-schema-validator:2.2.8 (depends on 2.9.7)
[info] * com.github.jnr:jnr-posix:3.0.49 is selected over 3.0.46
[info] +- com.github.jnr:jnr-unixsocket:0.20 (depends on 3.0.46)
[info] +- org.jruby:jruby-core:9.2.7.0 (depends on 3.0.46)
[info] * commons-logging:commons-logging:1.2 is selected over 1.1.1
[info] +- org.apache.commons:commons-configuration2:2.1 (depends on 1.2)
[info] +- org.apache.httpcomponents:httpclient:4.5.2 (depends on 1.2)
[info] +- commons-beanutils:commons-beanutils:1.9.2 (depends on 1.1.1)
[info] * com.github.fge:jackson-coreutils:1.8 is selected over 1.6
[info] +- com.github.java-json-tools:json-schema-core:1.2.8 (depends on 1.8)
[info] +- com.github.fge:json-patch:1.6 (depends on 1.6)
[info] * com.fasterxml.jackson.core:jackson-databind:2.9.5 is selected over 2.2.3
[info] +- io.swagger:swagger-core:1.5.19 (depends on 2.9.5)
[info] +- com.github.fge:jackson-coreutils:1.8 (depends on 2.2.3)
[info] * com.fasterxml.jackson.core:jackson-annotations:2.9.5 is selected over 2.9.0
[info] +- io.swagger:swagger-models:1.5.19 (depends on 2.9.5)
[info] +- io.swagger:swagger-core:1.5.19 (depends on 2.9.5)
[info] +- com.fasterxml.jackson.core:jackson-databind:2.9.5 (depends on 2.9.0)
[info] * org.slf4j:slf4j-api:1.7.22 is selected over {1.7.18, 1.6.3}
[info] +- io.swagger:swagger-models:1.5.19 (depends on 1.7.18)
[info] +- io.swagger:swagger-core:1.5.19 (depends on 1.7.18)
[info] +- io.github.swagger2markup:markup-document-builder:1.1.2 (depends on 1.7.18)
[info] +- org.slf4j:slf4j-ext:1.6.3 (depends on 1.7.18)
[info] +- io.swagger:swagger-parser:1.0.35 (depends on 1.7.18)
[info] * commons-codec:commons-codec:1.10 is selected over 1.9
[info] +- io.github.swagger2markup:markup-document-builder:1.1.2 (depends on 1.10)
[info] +- org.apache.httpcomponents:httpclient:4.5.2 (depends on 1.9)
[info] * org.apache.commons:commons-lang3:3.4 is selected over {3.3.2, 3.2.1}
[info] +- io.github.swagger2markup:markup-document-builder:1.1.2 (depends on 3.4)
[info] +- io.swagger:swagger-core:1.5.19 (depends on 3.2.1)
[info] +- org.apache.commons:commons-configuration2:2.1 (depends on 3.3.2)
Обычно строки с префиксом [WARN]
являются наиболее проницательными. Наиболее вероятные кандидаты для создания ваших исключений -
com.google.code.findbugs:jsr305:3.0.1 is selected over 2.0.1
com.google.guava:guava:20.0 is selected over 16.0.1
из-за увеличения основной версии.
Решением было бы либо обновить зависимости в одном плагине, либо понизить их в другом.