SBT, la Jetée et le Servlet 3.0
J'ai vraiment un petit problème.
J'ai la génération suivante.sbt fichier:
name := "Tueet"
libraryDependencies += "org.eclipse.jetty" % "jetty-webapp" % "8.1.2.v20120308"
Après avoir invoqué sbt mise à jour, j'obtiens le suivant:
[info] Set current project to Tueet (in build file:/C:/dev/tueet/)
[info] Updating {file:/C:/dev/tueet/}default-d5e982...
[info] Resolving org.scala-lang#scala-library;2.9.1 ...
[info] Resolving org.eclipse.jetty#jetty-webapp;8.1.2.v20120308 ...
[info] Resolving org.eclipse.jetty#jetty-xml;8.1.2.v20120308 ...
[info] Resolving org.eclipse.jetty#jetty-util;8.1.2.v20120308 ...
[info] Resolving org.eclipse.jetty#jetty-servlet;8.1.2.v20120308 ...
[info] Resolving org.eclipse.jetty#jetty-security;8.1.2.v20120308 ...
[info] Resolving org.eclipse.jetty#jetty-server;8.1.2.v20120308 ...
[info] Resolving org.eclipse.jetty.orbit#javax.servlet;3.0.0.v201112011016 ...
[info] Resolving org.eclipse.jetty#jetty-continuation;8.1.2.v20120308 ...
[info] Resolving org.eclipse.jetty#jetty-http;8.1.2.v20120308 ...
[info] Resolving org.eclipse.jetty#jetty-io;8.1.2.v20120308 ...
[warn] [NOT FOUND ] org.eclipse.jetty.orbit#javax.servlet;3.0.0.v201112011016!javax.servlet.orbit (603ms)
[warn] ==== public: tried
[warn] http://repo1.maven.org/maven2/org/eclipse/jetty/orbit/javax.servlet/3.0.0.v201112011016/javax.servlet-3.0.0.v201112011016.orbit
[warn] ::::::::::::::::::::::::::::::::::::::::::::::
[warn] :: FAILED DOWNLOADS ::
[warn] :: ^ see resolution messages for details ^ ::
[warn] ::::::::::::::::::::::::::::::::::::::::::::::
[warn] :: org.eclipse.jetty.orbit#javax.servlet;3.0.0.v201112011016!javax.servlet.orbit
[warn] ::::::::::::::::::::::::::::::::::::::::::::::
[error] {file:/C:/dev/tueet/}default-d5e982/*:update: sbt.ResolveException: download failed: org.eclipse.jetty.orbit#javax.servlet;3.0.0.v201112011016!javax.servlet.orbit
[error] Total time: 1 s, completed 2012-03-27 14:33:34
Que c'est stupide, car il fonctionne en Maven pas de prob. J'ai trouvé que c'est parce que l'Orbite fait quelque chose avec l'emballage (ils l'ont mis à l'orbite apparemment).
J'ai essayé de faire exclure("org.eclipse.la jetée.orbite", "javax.servlet") mais rien ne s'est passé et il a encore fallu que la dépendance.
Je ne pouvais pas trouver toutes les informations sur la façon de résoudre ce problème, peut-être que quelqu'un va m'aider ici 🙂
Mise à jour: l'présenté bug fournit une solution de contournement, afin de résoudre ce problème, j'ai effectivement changé de construire.sbt à
name := "Tueet"
libraryDependencies += "org.eclipse.jetty" % "jetty-server" % "8.1.2.v20120308"
ivyXML :=
<dependency org="org.eclipse.jetty.orbit" name="javax.servlet" rev="3.0.0.v201112011016">
<artifact name="javax.servlet" type="orbit" ext="jar"/>
</dependency>
- Dans le cas où le correctif ne vous aide pas, vous devriez essayer clair ivy caches fot de la jetée.
- Je suis incapable de le faire fonctionner même avec le inline
ivyXML
fix - Merci @tonek! Cela a fonctionné: rm -rf ~/.ivy2/cache/org.eclipse.la jetée.orbite
- Il fonctionne pour moi
Vous devez vous connecter pour publier un commentaire.
Voir ce bug: https://jira.codehaus.org/browse/JETTY-1493
Le nœud de la question est que le lierre ne prend pas en charge l'orbite de l'extension et les besoins de la carte de l'orbite de l'emballage de type jar. Vous ne savez pas si vous utilisez le lierre ou pas, mais la raison fondamentale est la même, vous pouvez voir qu'en regardant l'url, il est en cours de téléchargement à partir de maven central.
Ce bug a un peu plus de l'arrière-plan sur la raison pour laquelle nous nous sommes mis à ces dépendances en premier lieu.
https://bugs.eclipse.org/bugs/show_bug.cgi?id=371954
J'ai trouvé une solution de contournement. Plus d'informations peuvent être trouvées ici: SBT, la Jetée et le Servlet 3.0.
avec sbt 0.12+ (à partir de:https://github.com/sbt/sbt/issues/499)