我使用Play 2.4.2與斯卡拉。玩2.4.2 Scala控制器.Assets.at行動未找到
這是我的路線文件。
GET /favicon.ico controllers.Assets.at(path="/public", file="images/favicon.png")
GET /robots.txt controllers.Assets.at(path="/public", file="files/robots.txt")
GET/ controllers.Default.redirect(to = "http://www.marketingpage.local")
GET /assets/*file controllers.Assets.at(path="/public", file)
GET /:id controllers.XController.method0(id: String)
GET /path/:id controllers.XController.method1(id: String)
我正在使用注入路由生成器。這是我的構建。
routesGenerator:= InjectedRoutesGenerator,
的/,/:身份證,/路徑/:ID在航線開發和生產做工精細但沒有任何資產都在這些網頁返回生產。
進一步的測試顯示沒有使用controllers.Assets.at的路線在生產中工作。他們在開發過程中在我的本地機器上工作。
在生產中,如果我嘗試直接訪問資產,則會獲取默認的「未找到請求的操作」GET /assets/stylesheets/attachments.css'「。
因此,資產請求到達Play服務器。
我試過了所有我能找到的解決此問題的方法。
我懷疑這與依賴注入有關。
任何想法?
如何建立生產?如果您使用'stage/dist'構建,請嘗試在'lib'文件夾中查找'your_project_name-your_version-assets.jar'。如果這個jar包含你的資源,那麼打開debug,以'testProd'運行play,轉到'play.api.controllers.AssetsBuilder'類,並調試'assetAt'方法。您提供的信息很少,無法給出準確的答案。 – MrRontgen