2014-11-17 6 views
1

이 플러그인에서 재생 프레임 워크를 사용하고 있습니다. 나는 public 폴더를 위해 다음과 같은 구조를 가지고있다;sbt-less 플러그인의 컴파일 경로 구성

├───app 
│ ├───css 
│ ├───img 
│ ├───js 
│ │ ├───apis 
│ │ ├───config 
│ │ ├───controllers 
│ │ ├───directives 
│ │ ├───filters 
│ │ ├───locale 
│ │ └───services 
│ └───views 
└───test 

build.sbt에는 다음과 같은 내용이 있습니다.

includeFilter in (Assets, LessKeys.less) := "*.less" 

excludeFilter in (Assets, LessKeys.less) := "_*.less" 

LessKeys.rootpath in Assets := "public/app/css" 

main.scala.html에는 다음과 같은 링크 태그가 있습니다.

<link rel="stylesheet" href='@routes.Assets.at("app/css/main.css")'> 

마지막으로 내 routes은 다음과 같습니다.

GET  /assets/*file    controllers.Assets.at(path="/public", file) 

그러나 build.sbt의 구성이 작아 보이지 않습니다. public/app/css/main.less를 컴파일하고 싶습니다. 이것을 어떻게 할 수 있습니까? 재생 문서에 따르면

답변

1

: 재생에

에 Compilable 자산은 app/assets 디렉토리에 정의되어 있어야합니다.

그리고 SBT없는 추가 정보 : 상대 수입 및 URL에서 URL 재 작성을위한

설정 ROOTPATH.

Play에는 스칼라/자바 코드가 아닌 컴파일 가능한 자산을 기대할 수있는 곳이 필요하기 때문에 그렇게 할 방법이없는 것처럼 보입니다. rootpath 키는 덜 파일에 가져 오기/URL을 다시 쓰는 것처럼 보입니다.

당신이 필요로하는 것은 :

├───app 
│ ├───assets 
│ │ ├───css 
│ │ ├───img 
│ │ └───js 
│ │  ├───apis 
│ │  ├───config 
│ │  ├───controllers 
│ │  ├───directives 
│ │  ├───filters 
│ │  ├───locale 
│ │  └───services 
│ └───views 
└───test 
0

SbtWeb 플러그인에 정의 된 자산에 대한 기본 경로는 다음과 같습니다 app/assets :

sourceDirectory in Assets := (sourceDirectory in Compile).value/"assets"

그래서

쉽게 대체 할 수 있습니다 :

sourceDirectory in Assets := (sourceDirectory in Compile).value/"path"/"to"/"assets"