Ошибка сборки Maven Не доступны версии для org.codehaus.jackson: jackson-core-asl: jar: [1.8.1.9) в пределах указанного диапазона

Я получаю следующую ошибку с сегодняшнего утра, делая maven build. Для вчера и сегодня никаких конкретных изменений нет. Может ли кто-нибудь помочь мне разрешить это? Я попробовал очистить все локальные репозитории, изменив версию Jackson до 1.9.10. Удивительно, но это работает для моих коллег, которые работают над одной и той же сборкой.

[ERROR] Failed to execute goal on project netvogue-database-api: Could not resolve     dependencies for project org.netvogue.server:netvogue-database-api:jar:1.0-SNAPSHOT: Failed to collect dependencies for [org.springframework.data:spring-data-neo4j-rest:jar:2.1.0.RC4 (compile), org.codehaus.jackson:jackson-jaxrs:jar:1.8.3 (compile), org.codehaus.jackson:jackson-mapper-asl:jar:1.8.3 (compile), org.neo4j:neo4j-kernel:jar:tests:1.8.RC1 (test), org.neo4j:neo4j-cypher:jar:1.8.RC1 (compile), com.amazonaws:aws-java-sdk:jar:1.3.10 (compile), org.imgscalr:imgscalr-lib:jar:4.2 (compile), org.springframework:spring-context:jar:3.1.2.RELEASE (compile), org.springframework.security:spring-security-config:jar:3.1.2.RELEASE (compile), org.springframework.security:spring-security-web:jar:3.1.2.RELEASE (compile), org.slf4j:slf4j-api:jar:1.5.10 (compile), org.slf4j:jcl-over-slf4j:jar:1.5.10 (runtime), org.slf4j:slf4j-log4j12:jar:1.5.10 (runtime), log4j:log4j:jar:1.2.16 (compile), junit:junit:jar:4.7 (test)]: No versions available for org.codehaus.jackson:jackson-core-asl:jar:[1.8,1.9) within specified range -> [Help 1]

Ответ 1

Как указано yegor256, тот, кто недавно сталкивается с этой проблемой, вероятно, вызван Amazon AWS. Просто измените свой aws-java-sdk на более новую версию (текущий - 1.3.20), и проблема исчезнет.

Ответ 2

Похоже, что файл Jackson jackson-core-asl maven-metadata.xml поврежден.

Когда Maven пытается разрешить версии зависимостей из диапазона, он должен посмотреть в файл maven-metadata.xml, чтобы определить кандидатов по версии, которые он может выбрать. В настоящее время этот файл выглядит так:

<metadata modelVersion="1.1.0">
  <groupId>org.codehaus.jackson</groupId>
  <artifactId>jackson-core-asl</artifactId>
  <versioning>
    <latest>1.1.0</latest>
    <release>1.1.0</release>
    <versions>
      <version>1.1.0</version>
    </versions>
    <lastUpdated>20120928142709</lastUpdated>
  </versioning>
</metadata>

Это означает, что единственная законная версия, которую может выбрать диапазон версии, - 1.1.0. В качестве примера того, как этот файл, скорее всего, выглядел, прежде чем проверить файл jackson-core-lgpl maven-metadata.xml:

<metadata>
<groupId>org.codehaus.jackson</groupId>
  <artifactId>jackson-core-lgpl</artifactId>
  <version>0.9.8</version>
  <versioning>
    <versions>
      <version>0.9.8</version>
      <version>0.9.7</version>
      <version>0.9.9</version>
      <version>0.9.9-2</version>
      <version>0.9.9-3</version>
      <version>0.9.9-4</version>
      <version>0.9.9-5</version>
      <version>0.9.9-6</version>
      <version>1.0.0</version>
...

Как было предложено ранее, вы можете жестко закодировать зависимость от конкретной версии Jackson, которая коротко замыкает разрешение версии и позволяет избежать чтения файла maven-metadata.xml.

Ответ 3

Я должен указать, что последняя версия этого файла (maven-metadata.xml) должна быть неправильной. Последняя версия для org.codehaus.jackson/jackson-core-asl - 1.9.9.

Другие зависимости, требующие, чтобы другие версии jackson-core-asl, новее, чем 1.1.0, сломались. Как и по моему сценарию. Мне пришлось вручную изменить файл maven-metadata.xml ok jackson-core-asl, чтобы он работал.

Ответ 4

Maven не может найти зависимость для jackson-core-asl, вам нужно включить следующее в свой POM

<dependency>
    <groupId>org.codehaus.jackson</groupId>
    <artifactId>jackson-core-asl</artifactId>
    <version>1.9.0</version>
</dependency>

Если он уже включен, вам может потребоваться указать репозиторий. Проверьте репозиторий maven