web-dev-qa-db-fra.com

Idée, sbt, incapable de reprendre l'avertissement

J'ai poussé mon artefact vers oss nexus repo, l'ajoute comme dépendance à un autre projet. L'idée me tient en garde:

[warn] Unable to reparse com.github.kondaurovdev#jsonapi_2.11;0.1-SNAPSHOT from sonatype-snapshots, using Fri May 13 17:12:52 MSK 2016 [warn] Choosing sonatype-snapshots for com.github.kondaurovdev#jsonapi_2.11;0.1-SNAPSHOT 

Peut-être que j'ai poussé l'artefact d'une manière ou d'une autre dans le mauvais sens? Mais je l'ai fait plus tôt, tout allait bien. Comment se débarrasser de ces avertissements? Ou simplement les ignorer?

44

J'ai eu le même problème.

Avez-vous publié votre version INSTANTANÉE sur votre artificiel? Si c'est le cas this pourrait être votre problème.

Comme vous le savez lors de la publication locale, votre version de l'instantané est stockée dans le répertoire .ivy2/local. La version distante est stockée dans le répertoire .ivy2/cache.

En regardant dans le dossier .ivy2/cache/{dependency}, vous verrez qu'il n'a téléchargé que le fichier xml et les propriétés. Donc, juste les métadonnées et pas de pots. C'est la vraie raison pour laquelle il ne peut pas être analysé car il n'est pas là.

Étant donné que le .ivy2/cache a priorité sur .ivy2/local, il ne verra pas votre version publiée locale. Il existe 2 façons de résoudre ce problème.

  • Mettez à jour votre numéro de version d'instantané (recommandé)
  • Supprimez le SNAPSHOT de votre artificiel et supprimez le dossier .ivy2/cache/{dependency} sur chaque client disposant d'une version locale.

À mon avis, la première est la voie à suivre.

19
Jork

J'ai eu le même problème, et il disparaît après avoir ajouté le suivant dans mon build.sbt :

updateOptions := updateOptions.value.withLatestSnapshots(false)

Vous pouvez trouver plus de détails sur https://github.com/sbt/sbt/issues/265

9
vsftam