目标
我的目标是通过我的 Play 2.x scala 项目让 Twitter Bootstrap 物有所值。因为我不能让它工作,所以我决定开始一个空项目,看看我是否能掌握“少”的窍门。现在这就是我被卡住的地方,因为我似乎无法“少”编译/做任何事情!
空项目中的简单复制
- 下载http://www.playframework.org/download play-2.0.2-RC2.zip 并将其解压缩到我的 debian linux 机器上。(为什么play-2.0.2-RC2?因为那里的'less'版本与这里提到的最新的twitter bootstrap兼容。)
- 创建了一个新的播放项目
play new zzz
(zzz=测试项目的名称)。 - 去
zzz/public/stylesheets
添加一个名为的文件q.less
(它的内容是这个页面上的第一个例子http://lesscss.org/,简单的变量名使用)。 - 因为我每次都在测试很多,所以每次输入:
play clean-all
在每个新的 test/Build.scala/etc 文件更改之前的命令行中。 - 开始
play
并输入:reload
(真的不知道为什么)compile
(根据:http ://www.playframework.org/documentation/2.0.1/AssetsLess )- (*) 见下文
- 我 ctrl+d'ed 退出游戏并输入:
find . -name *.css
它并没有在任何地方显示我的 'q.css'。
情节变厚了
现在,在阅读了谷歌群组上的一条消息后,我发现了两件事:
- 他暗示 Build.scala 中的 less 编译器只构建某些文件。这对我的空“zzz”测试项目来说不是问题(因为它没有部分 twitter bootstrap less 文件),但我还是添加了这些行来测试:
lessEntryPoints <<= baseDirectory(_ / "app" / "assets" / "stylesheets" ** "q.less")
.- 注意:如果我
play-less-entry-points
在游戏控制台中输入,我会得到两个空行,只是说明 '[info]' ...仅此而已。有什么问题吗?
- 注意:如果我
- 他(和其他人)提到了播放命令
play-copy-assets
和copy-resources
. 我在“(*)”的上述复制步骤中输入了这些命令。结果相同,没有css文件。
编辑:我的“目标”目录列表
我的目标目录列表在测试上述内容之后,在我用play clean-all
命令行中的“重置”它之前看起来像这样:
cache classes classes_managed src_managed
它没有提到的“resource_managed”目录。是否有日志/详细模式我可以查看是否调用了较少的编译器。也许我的测试文件中的语法错误较少?我只是不知道了:)。
也许相关,但对我的问题不重要?
也许相关并且可以帮助我理解它......但是:官方“网站”提到在行中使用双“**” lessEntryPoints
。在 stackoverflow 上这里使用一个 '*' 而google 组上的消息甚至没有使用它。这是如何运作的?
我的问题
我想了解我在这里做错了什么。有了这些知识,我确信我能够将 twitter 引导到我的游戏项目中。