这就是我的文件结构在Play中的样子:
- public
- bower_components
- images
- stylesheets
这是我的<head>
:
<head>
<title>@title</title>
<link rel="shortcut icon" href='@routes.Assets.at("images/favicon.png")'>
<link rel="stylesheet" media="screen" href='@routes.Assets.at("bower_components/bootstrap/dist/css/bootstrap.min.css")'>
<link rel="stylesheet" media="screen" href='@routes.Assets.at("stylesheets/main.css")'>
<script src='@routes.Assets.at("bower_components/jquery/dist/jquery.min.js")'></script>
<script src='@routes.Assets.at("bower_components/bootstrap/dist/js/bootstrap.min.js")'></script>
</head>
路线:
GET / controllers.Application.index
GET /public controllers.Application.public
GET /assets/*file controllers.Assets.at(path="/public", file)
它适用于开发我有200多岁。当我部署到Heroku时,除了样式表和图像目录之外,我为所有的bower组件获得404s。
我假设可能是因为Play无法识别bower组件目录。有没有人知道如何为资产添加一个新的目录来构建?
答案 0 :(得分:4)
在玩游戏时使用bower时,请注意您将使用的资源存储在/dist
文件夹中。现在,您可能认为这不是什么大问题,但是如果您检查默认的.gitignore
文件,您会发现在一行中它有四个这样的字符:
dist
这足以忽略应用程序中的所有dist
。只需删除该行,运行git status,您就会发现您将有一些新文件要添加到您的仓库中。
提交并推送到Heroku。你现在应该好好过去。