To brzmi prosto, ale kosztowało mnie to cały dzień: chcę się zmienić, aby zmienić port, na którym działa scalatra, w fazie rozwoju. Zacząłem od szablonu hello world g8 i budowałem od tego miejsca.Zmiana portu Scalatra
Oto, co starałem dotąd:
Zmiana portu w build.scala, ala dokumentacja: http://www.scalatra.org/guides/deployment/configuration.html nie skompilować, ponieważ port jest niezdefiniowany.
Zmiana portu w build.scala, ala tych dwóch przykładach: https: gist.github.com drzemał 58af6cfbfe721a562a48 https://github.com/JamesEarlDouglas/xsbt-web-plugin/blob/master/src/sbt-test/web/servlet/project/Build.scala sam problem: port jest niezdefiniowany
Redefiniowanie punkt wejścia, ala http: www .scalatra.org prowadzi wdrażania standalone.html nadal działa na porcie 8080
Zmiana startowych params w bootstrap, ala http: www.scalatra.org prowadzi wdrażania configuration.html nadal działa na porcie 8080
Każda pomoc doceniona. Z jakiegoś powodu nie mogę opublikować więcej niż 2 linków, więc zamień spacje na przednie ukośniki, aby śledzić adresy URL.
Oto mój build.scala w przypadku, gdy pomaga.
import sbt._
import Keys._
import org.scalatra.sbt._
import org.scalatra.sbt.PluginKeys._
import com.mojolly.scalate.ScalatePlugin._
import ScalateKeys._
import com.earldouglas.xsbtwebplugin._
import WebPlugin._
object YesManBuild extends Build {
val Organization = "com.prezi"
val Name = "Yes Man"
val Version = "0.1.0-SNAPSHOT"
val ScalaVersion = "2.10.2"
val ScalatraVersion = "2.2.1"
//def Conf = config("container")
lazy val project = Project (
"yes-man",
file("."),
settings = Defaults.defaultSettings ++ ScalatraPlugin.scalatraWithJRebel ++ scalateSettings ++ Seq(
//port in Conf := 8081,
mainClass := Some("com.prezi.eureka.JettyLauncher.main"),
organization := Organization,
name := Name,
version := Version,
scalaVersion := ScalaVersion,
resolvers += Classpaths.typesafeReleases,
libraryDependencies ++= Seq(
"org.slf4j" % "slf4j-log4j12" % "1.7.5",
"com.netflix.eureka" % "eureka-client" % "1.1.97",
"com.netflix.ribbon" % "ribbon-httpclient" % "0.1.10",
"com.netflix.ribbon" % "ribbon-eureka" % "0.1.11",
"org.scalatra" %% "scalatra" % ScalatraVersion,
"org.scalatra" %% "scalatra-scalate" % ScalatraVersion,
"org.scalatra" %% "scalatra-specs2" % ScalatraVersion % "test",
"ch.qos.logback" % "logback-classic" % "1.0.6" % "runtime",
"org.eclipse.jetty" % "jetty-webapp" % "8.1.8.v20121106" % "container",
"org.eclipse.jetty.orbit" % "javax.servlet" % "3.0.0.v201112011016" % "container;provided;test" artifacts (Artifact("javax.servlet", "jar", "jar")),
"org.eclipse.jetty.aggregate" % "jetty-all" % "9.0.4.v20130625"
),
scalateTemplateConfig in Compile <<= (sourceDirectory in Compile){ base =>
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")
)
)
}
)
)
}
Dzięki chłopaki,
~ Erik
Zgodnie z dokumentami, ustawienie build.scala to: 'port w container.Configuration: = 8081', ale masz go jako' port w Conf: = 8081'. Czy wypróbowałeś go dokładnie tak, jak to określił w dokumentach? – cmbaxter
tak, próbowałem tego również – Kire321