Jetty-webapp неизвестный артефакт в sbt
Я создал приложение Scalatara для создания веб-сервиса. Он использует сервер Jetty и был включен в файл build.sbt при создании самого проекта.
Но когда я пытаюсь запустить сервер Jetty с помощью команды - jetty: start, он показывает мне сообщение об ошибке "Недопустимый ключ: jetty". Затем, когда я проверил файл сборки, он показывает предупреждение как "неизвестный артефакт в sbt" для приведенной ниже зависимости.
"org.eclipse.jetty"% "jetty-webapp"% "9.4.6.v20170531"% "контейнер"
Я использовал последнюю зависимость из репозитория MVN, но все равно она показывает ту же ошибку. Есть ли что-то еще, что я должен сделать здесь?
2 ответа
Как вы создали проект? Есть ли способ, которым вы можете сказать мне, чтобы я мог воспроизвести его. Будет гораздо проще разобраться. В любом случае, вы можете сначала попытаться добавить решатель в ваш build.sbt:
resolvers += "Jetty" at "https://mvnrepository.com/artifact/org.eclipse.jetty/jetty-webapp"
Пожалуйста, сравните код файла build.sbt, показанный ниже, и если чего-то не хватает, вы должны обновить его в файле build.st.
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)