2 votes

Clojure/leiningen ne trouve pas les dépendances

Je suis nouveau à Clojure et à Leiningen. Je viens de commencer à travailler sur un projet existant. J'ai tiré le repo et j'ai fait la commande Lein run. Il s'est plaint :

"Could not find arctype:service.jose:jar:0.1.0-SNAPSHOT in clojars ( https://repo.clojars.org/ ) Impossible de transférer l'artefact arctype:service.jose:jar:0.1.0-SNAPSHOT de/vers enonic ( https://repo.enonic.com/public/ ) : Échec du transfert de fichier https://repo.enonic.com/public/arctype/service.jose/0.1.0-SNAPSHOT/service.jose-0.1.0-SNAPSHOT.jar avec le code d'état 409"

Ce que j'ai fait, en supposant que les dépendances sont mauvaises, c'est que je suis allé sur repo.clojars.org. J'ai examiné manuellement les dépendances et modifié "[arctype/service.jose "0.1.0-SNAPSHOT" :exclusions [arctype/service]]" dans project.clj en "[arctype/service "0.1.0-SNAPSHOT":exclusions [arctype/service]]", parce que c'est ce qu'il y a sur le site. Mais il s'avère que "Jose" n'est pas dans arctype/service, et le fait de changer les dépendances comme je l'ai fait l'a supprimé, donc je dois le changer à nouveau.

Ce qui me perturbe vraiment, c'est que, d'après le message d'erreur, je suis allé sur repo.clojars.org pour chercher les dépendances que je veux, "arctype.service.jose" ne se trouve nulle part. Même pas quelque chose d'approchant.

J'ai vu la deuxième moitié du message d'erreur qui mentionne repo.enonic.com/public , donc j'ai essayé de chercher la dépendance là aussi. Même résultat, rien. Dans mon fichier project.clj, le dépôt est repo.enonic.com/public. Je suis vraiment perdu, est-ce que quelqu'un peut m'éclairer ? Merci d'avance !

Je ne suis pas sûr d'en avoir fourni assez, merci de me le faire savoir !

0voto

andy_fingerhut Points 146

La plupart des projets open source écrits en Java publient des artefacts sur Maven Central, et la plupart des projets Clojure publient des artefacts sur Maven Central ou clojars.org. Le fait que votre message d'erreur mentionne https://repo.enonic.com/public/ peut être parce que l'artefact mentionné dans votre fichier project.clj a été publié sur ce serveur, et non sur clojars.org.

Si je vais sur clojars.org (pas repo.clojars.org), il y a une belle interface web avec une boîte de recherche, et si j'entre "arctype" (sans les guillemets) et que je fais une recherche dessus, cela trouve arctype/service, mais pas arctype/service.jose, probablement parce que arctype/service.jose n'a pas été publié sur le site clojars.org. Ou, s'il l'était, quelqu'un a décidé de le supprimer. La suppression de choses publiées est assez rare, donc je pense que si arctype/service.jose a existé, il n'a peut-être été publié que sur le site repo.enonic.com.

Votre projet est-il open source ? Publié sur Github.com ou un site similaire où d'autres personnes peuvent obtenir une copie et l'essayer ? Si oui, le mentionner dans votre question aiderait les autres à voir s'ils obtiennent la même erreur que vous.

Si le projet sur lequel vous travaillez n'est pas open source, j'espère que quelqu'un de plus familier que moi avec les erreurs que vous rencontrez vous répondra.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X