簡體   English   中英

將Scala模塊添加到現有Java項目中

[英]Adding Scala module to existing Java project

所以我有一個相當大的游戲! 項目使用標准的Java東西。 我想開始使用Scala,並認為我可以將兩者結合起來。 我安裝了scala模塊並添加了配置行。 然后我添加了一個像這樣的新控制器:

package controllers

import play.mvc._

object Blog extends Controller {
  def index = "test"
}

但是,當我重新啟動服務器並嘗試瀏覽到http:// localhost:9000 / Blog / index時,我得到“未找到Blog.index操作”

還有什么我需要做的事情來為這個項目添加Scala支持,還是我必須用get來創建一個帶Scala的新項目並復制所有文件?

UPDATE

路線:

# Routes
# This file defines all application routes (Higher priority routes first)
# ~~~~

# Home page
GET     /explorer                               Application.index
GET     /signup                                 Application.signUp
POST    /register                               Application.register
GET     /tour                                   Main.tour
GET     /                                       Main.homePage

# Map static resources from the /app/public folder to the /public path
GET     /public/                                staticDir:public

*       /admin                                  module:crud

# Catch all
*       /                                       module:secure
*       /{controller}/{action}                  {controller}.{action}

日志:

@65kk1d8dn
Blog.index action not found

Action not found
Action Blog.index could not be found. Error raised is Controller controllers.Blog not found

play.exceptions.ActionNotFoundException: Action Blog.index not found
    at play.mvc.ActionInvoker.getActionMethod(ActionInvoker.java:447)
    at play.mvc.ActionInvoker.invoke(ActionInvoker.java:78)
    at Invocation.HTTP Request(Play!)
Caused by: java.lang.Exception: Controller controllers.Blog not found
    ... 3 more

因為無論出於何種原因*,它不是Blog.index ,而是Blog$.index()

  • 我假設它是Scala中的伴隨對象成為JVM中的類的方式。

你檢查路線文件了嗎? 它包含控制器/操作的路徑? 服務器啟動沒有任何錯誤?

在我看來路線文件中有錯誤,您可以添加您的配置和您看到的完整錯誤消息嗎?

編輯(添加路線后):

mm我擔心你的問題是Windows(我上面的評論明顯回答,我知道)。 我在Play Google小組中看到了一些與Windows相關的問題。 由於Scala的支持在某種程度上仍然有點“實驗性”,我只相信你踩到了一個bug。 我會和Play團隊一起創建一張票。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM