上下文:--我第一次看到Scalatra。我遵循斯卡帕特拉行动和样例代码回购提供的指示。我能够获得一个使用g8创建的模板项目。当我更新PageController文件中的代码并启动jetty服务器时,我会得到一些非常奇怪的错误消息,参见下面。
c:\Users\eric.barnes\Desktop\scalatra-cms>sbt
[info] welcome to sbt
1.4.5 (Oracle Corporation Java 16.0.2)
[info] loading global plugins from C:\Users\eric.barnes\.sbt\1.0\plugins
[info] loading settings for project scalatra-cms-build from plugins.sbt ...
[info] loading project definition from C:\Users\eric.barnes\Desktop\scalatra-cms\project
[info] loading settings for project hello from build.sbt ...
[info] set current project to Scalatra CMS (in build
file:/C:/Users/eric.barnes/Desktop/scalatra-cms/)
[info] sbt server started at local:sbt-server-dc962f233e7070ae620d
[info] started sbt server sbt:Scalatra CMS> ~jetty:start [info] compiling 1 Scala source to
C:\Users\eric.barnes\Desktop\scalatra-cms\target\scala-2.13\classes ...
[error] C:\Users\eric.barnes\Desktop\scalatra-
cms\src\main\scala\com\example\cms\PageController.scala:4:8: not found: object scalate
[error] import scalate.ScalateSupport [error] ^
[error] C:\Users\eric.barnes\Desktop\scalatra-
cms\src\main\scala\com\example\cms\PageController.scala:6:31: not found: type
ScalatraCmsStack [error] class PagesController extends ScalatraCmsStack {
[error] ^
[error] C:\Users\eric.barnes\Desktop\scalatra-
cms\src\main\scala\com\example\cms\PageController.scala:8:3: not found: value get
[error] get("/pages/:slug") {
[error] ^
[error] C:\Users\eric.barnes\Desktop\scalatra-
cms\src\main\scala\com\example\cms\PageController.scala:9:5: not found: value contentType
[error] contentType="text/html"
[error] ^
[error] C:\Users\eric.barnes\Desktop\scalatra-
cms\src\main\scala\com\example\cms\PageController.scala:10:35: not found: value params
[error] PageDao.pages find (_.slug == params("slug")) match {
[error] ^
[error] C:\Users\eric.barnes\Desktop\scalatra-
cms\src\main\scala\com\example\cms\PageController.scala:11:26: not found: value ssp
[error] case Some(page) => ssp("/pages/show", "page" -> page)
[error] ^
[error] 6 errors found [error] (Compile / compileIncremental) Compilation failed
[error] Total time: 2 s, completed Oct 4, 2021, 10:51:45 AM [info] 1. Monitoring source files
for hello/jetty:start... [info] Press <enter> to interrupt or '?' for more options.问题:--这里的错误消息传递--对于第一次使用Scalatra来说有点令人困惑。我在PageController回购中使用相同的代码,所以为什么我会看到这些错误,以及如何解决这些错误?看起来,我的shell不承认scalate库是一个现有的库,但据我理解,scalate随scalatra一起安装包,所以我很困惑。
发布于 2021-10-05 08:47:18
要在Scalatra项目中使用Scalate (Scala中的模板引擎),必须向构建文件添加以下依赖项:
"org.scalatra" %% "scalatra-scalate" % ScalatraVersion您可以在:https://github.com/scalatra/scalatra-in-action/blob/master/chapter02/project/build.scala上看到示例项目的构建配置
顺便说一句,Scalatra in Action是一本以Scalatra 2.4为基础的老书,而Scalatra的最新主要版本是2.8。尽管这本书中的大多数主题对于Scalatra 2.8仍然有效,但Scalatra 2.8中已经不再支持标度支持。我们建议在Scalata2.8中使用转圈而不是Scalate。
https://stackoverflow.com/questions/69440594
复制相似问题