С помощью earldouglas (большое спасибо за это) я запустил его:
Файлы проекта:
/project-root
+ project/
| + build.properties (single line content: sbt.version=1.2.8)
| + plugins.sbt (single line content: addSbtPlugin("com.earldouglas" % "xsbt-web-plugin" % "4.0.2") )
|
+ src/main/
| + scala/local/test/
| | + endpoint/
| | | + Hello.scala
| | + Main.scala
| + webapp/WEB-INF/
| + web.xml
|
+ build.sbt
Hello.scala: как в вопросе выше, но удалитеВторой GET-запрос.Два одинаковых запроса на одной и той же конечной точке не работают.
Main.scala: см. Выше
web.xml:
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
version="3.1">
</web-app>
build.sbt: как и выше,но замените строки
containerLaunchCmd in Container := { (port, path) =>
Seq("fish.payara.micro.PayaraMicro")
}
на
containerLaunchCmd in Container := { (port, path) =>
Seq("fish.payara.micro.PayaraMicro", "--deploy", "target/webapp", "--contextroot", "/")
}
, а также измените val проекта на
lazy val testService = (project in file("."))
, возможно, вы захотите изменить contextroot в зависимости от ваших потребностей.
При каждом изменении источника вам нужно запускать container:start
.
После запуска Payara Micro вы можете проверить его:
curl localhost:8080/hello
curl localhost:8080/application.wadl
ОБНОВЛЕНИЕ файлы доступны в качестве примера проекта на
https://github.com/earldouglas/xsbt-web-plugin/tree/master/docs/examples/payara-micro