2017-09-02 5 views
0

J'ai créé l'application Scalatara pour construire un service web. Il utilise le serveur Jetty et il a été inclus dans le fichier build.sbt lorsque j'ai créé le projet lui-même.Jetty-webapp artefact inconnu dans sbt

Mais lorsque je tente de démarrer le serveur en utilisant la commande jetée - jetée: début, il me montre un message d'erreur « pas une clé valide: jetée ». Ensuite, lorsque j'ai vérifié le fichier de construction, il affiche un message d'avertissement comme "artefact inconnu dans sbt" pour la dépendance ci-dessous.

"org.eclipse.jetty" % "jetée-webapp" % "9.4.6.v20170531" % "contenant"

J'utilise la dernière dépendance du dépôt MVN, mais encore, il montre la même erreur. Y a-t-il autre chose que je dois faire ici?

Répondre

0

Comment avez-vous créé le projet? Y a-t-il un moyen de me le dire pour que je puisse le reproduire? Sera beaucoup plus facile à comprendre. Quoi qu'il en soit, vous pouvez essayer d'ajouter un résolveur d'abord à votre build.sbt:

resolvers += "Jetty" at "https://mvnrepository.com/artifact/org.eclipse.jetty/jetty-webapp"

+0

Je créé à l'aide de la commande - 'SBT nouvelle scalatra/scalatra-sbt.g8' qui est donnée sur le site officiel Scalatra: http://scalatra.org/getting-started/first-project.html –

+0

J'ai ajouté le résolveur, mais il montre toujours le même avertissement. resolvers ++ = Seq (Classpaths.typesafeReleases, "Jetty" sur "https://mvnrepository.com/artifact/org.eclipse.jetty/jetty-webapp") –

+0

Soudainement le problème est résolu maintenant quand j'ai fait sbt build encore. Croyez-moi, je l'ai essayé tellement de fois mais cela n'a pas fonctionné avant. Mais encore, il me montre un message d'erreur "pas une clé valide: jetée" lorsque je lance la commande jetty: start. –

0

comparer Veuillez le code du fichier build.sbt illustré ci-dessous et si quelque chose vous manque devez mettre à jour en vous build.st fichier.

import org.scalatra.sbt._ 
import org.scalatra.sbt.PluginKeys._ 
import ScalateKeys._ 

val ScalatraVersion = "2.5.1" 

ScalatraPlugin.scalatraSettings 

scalateSettings 

organization := "com.github.karthikeyana" 

name := "My Scalatra Web App" 

version := "0.1.0-SNAPSHOT" 

scalaVersion := "2.12.3" 

resolvers += Classpaths.typesafeReleases 

libraryDependencies ++= Seq(
    "org.scalatra" %% "scalatra" % ScalatraVersion, 
    "org.scalatra" %% "scalatra-scalate" % ScalatraVersion, 
    "org.scalatra" %% "scalatra-specs2" % ScalatraVersion % "test", 
    "ch.qos.logback" % "logback-classic" % "1.1.5" % "runtime", 
    "org.eclipse.jetty" % "jetty-webapp" % "9.2.15.v20160210" % "container", 
    "javax.servlet" % "javax.servlet-api" % "3.1.0" % "provided", 
    "org.mongodb" %% "casbah" % "3.1.1" 
) 

scalateTemplateConfig in Compile := { 
    val base = (sourceDirectory in Compile).value 
    Seq(
    TemplateConfig(
     base/"webapp"/"WEB-INF"/"templates", 
     Seq.empty, /* default imports should be added here */ 
     Seq(
     Binding("context", "_root_.org.scalatra.scalate.ScalatraRenderContext", importMembers = true, isImplicit = true) 
    ), /* add extra bindings here */ 
     Some("templates") 
    ) 
) 
} 

enablePlugins(JettyPlugin) 
+0

Tout correspond sauf l'organisation, le nom et la dépendance mongodb. J'espère que ces changements ne comptent pas dans ce cas. Je recevais le même avertissement pour la dépendance de logback également. Je ne l'ai pas mentionné dans la question car il a commencé à fonctionner quand j'ai utilisé une dépendance différente pour cela. –

+0

Soudainement le problème est résolu maintenant quand j'ai refait construire sbt. Croyez-moi, je l'ai essayé tellement de fois mais cela n'a pas fonctionné avant. Mais encore, il me montre un message d'erreur "pas une clé valide: jetée" lorsque je lance la commande jetty: start. –