Я пытаюсь скомпилировать * .less ресурсы из моего каталога assets/stylesheets/
. У меня есть один файл, содержащийся в этом каталоге, который равен masterpage.less
.Less Resources not Compiling Play 2.3.7
Я добавил плагин sbt для менее addSbtPlugin("com.typesafe.sbt" % "sbt-less" % "1.0.6")
в моем plugins.sbt
файле.
The Play documentation говорит:
компилируется активы в Play должны быть определены в директории приложения/активов. Они обрабатываются процессом сборки, а источники LESS скомпилированы в стандартные файлы CSS. Сгенерированные файлы CSS распределяются как стандартных ресурсов в ту же общедоступную/папку, что и неуправляемые активы , что означает, что нет никакой разницы в том, как вы их используете после компиляции.
Что я делаю, так что я запутался, почему мои ресурсы не компилируются в public/
Вот маршруты я есть:
GET /assets/*file controllers.Assets.at(path="/public", file)
GET /vassets/*file controllers.Assets.versioned(path="/public", file: Asset)
GET /webjars/*file controllers.WebJarAssets.at(file)
Это, как я пытаюсь связать страницу CSS в моем HTML файле:
<link rel="stylesheet" media="screen" href="@routes.Assets.at("stylesheets/masterpage.css")"/>
и, наконец, здесь ошибка я получаю в моей консоли:
GET http://localhost:9000/assets/masterpage.css
Так что это сработало, но прохождение текста в OP, кажется, вводит в заблуждение. Я интерпретировал это как означающий, что любой файл '* .less' в каталоге' app/assets' будет скомпилирован. Если у меня есть 100 файлов 'less', я бы включил их все в этот фильтр? –
Обычно вы импортируете их из вашего main.less, поэтому у вас есть один выходной файл .js. Или используйте подстановочные знаки. –