Play Framework для Scala: [тип BooksController не является членом контроллеров пакетов] - PullRequest
0 голосов
/ 06 декабря 2018

Я пытаюсь скомпилировать, но получаю следующую ошибку компиляции на консоли

<> @ 7a6b9ggi8 - Внутренняя ошибка сервера, для (GET) [/ books] ->

 play.sbt.PlayExceptions$CompilationException: Compilation error[type BooksController is not a member of package controllers]
    at play.sbt.PlayExceptions$CompilationException$.apply(PlayExceptions.scala:27)
    at play.sbt.PlayExceptions$CompilationException$.apply(PlayExceptions.scala:27)
    at scala.Option.map(Option.scala:145)
    at play.sbt.run.PlayReload$$anonfun$taskFailureHandler$1.apply(PlayReload.scala:49)
    at play.sbt.run.PlayReload$$anonfun$taskFailureHandler$1.apply(PlayReload.scala:44)
    at scala.Option.map(Option.scala:145)
    at play.sbt.run.PlayReload$.taskFailureHandler(PlayReload.scala:44)
    at play.sbt.run.PlayReload$.compileFailure(PlayReload.scala:40)
    at play.sbt.run.PlayReload$$anonfun$compile$1.apply(PlayReload.scala:17)
    at play.sbt.run.PlayReload$$anonfun$compile$1.apply(PlayReload.scala:17)
 [info] Compiling 4 Scala sources and 1 Java source to /Users/Play/PROJ_NAME/target/scala-2.11/classes...
 [error] /Users/Play/PROJ_NAME/conf/routes:18: type BooksController is not a member of package 

controllers
[error] GET     /books                      controllers.BooksController.index()
[error] /Users/Play/PROJ_NAME/conf/routes:18: type BooksController is not a member of package controllers
[error] GET     /books                      controllers.BooksController.index()
[error] /Users/Play/PROJ_NAME/conf/routes:18: type BooksController is not a member of package controllers
[error] GET     /books                      controllers.BooksController.index()
[error] three errors found
[error] (compile:compileIncremental) Compilation failed
[error] application -

И BooksController -

package controllers;

import play.mvc.Controller;
import play.mvc.Result;

import play.*;
import play.data.*;
import play.mvc.*;
import views.html.*;
//
public class BooksController extends Controller{
    public Result index(){
        return TODO;
    }
}

, а маршруты -

GET     /                           controllers.HomeController.index
# An example controller showing how to use dependency injection
GET     /count                      controllers.CountController.count
# An example controller showing how to write asynchronous code
GET     /message                    controllers.AsyncController.message
# Map static resources from the /public folder to the /assets URL path
GET     /assets/*file               controllers.Assets.versioned(path="/public", file: Asset)

#フォーム処理アクション
#POST   /send                       controllers.HomeController.send()

#book用
GET     /books                      controllers.BooksController.index()
#GET     /books/create               controllers.BooksController.create()
#GET     /books/:id                  controllers.BooksController.show(id: Integer)
#GET     /books/edit/:id             controllers.BooksController.edit(id: Integer)
#POST    /books/edit                 controllers.BooksController.update()
#POST    /books/create               controllers.BooksController.save()
#GET     /books/delete/:id           controllers.BooksController.destroy(id: Integer)

GET     /about/

Я использую Play Framework 2.5.10 Как отладить эту ошибку компиляции?

Спасибо за вашеподдержка!

1 Ответ

0 голосов
/ 06 декабря 2018

Вероятно, это потому, что ваш контроллер является классом java, а не классом scala.Я знаю, что сам допустил ошибку, перепутав это.

Я думаю особенно, потому что вы получаете это: Compiling 4 Scala sources and 1 Java source и, возможно, пакет неправильный.Возможно, это должно быть /app/controllers, возможно, вам будет проще проверить ваш иде.

...