내 설정은 Scala Play 2.5가 설치된 org.webjars.webjars-play.2.5.0
입니다. 다른 용도로 두 개의 WebJars 라이브러리를 사용했고 두 개의 디렉토리에있는 jquery.min.js
파일 (target/web/web-modules/main/webjars/lib/jquery
및 target/web/web-modules/main/webjars/lib/jquery/dist
)로 끝납니다.WebJarAssets에서 jQuery.min.js를 찾을 수 없습니다.
인덱스 웹 페이지에 액세스했을 때 파일이 target/web/web-modules/main/webjars/lib/jquery/jquery.min.js
인데도 이 예외로 throw되었습니다 (예외 번호 [IllegalArgumentException: jquery/jquery.min.js could not be found
). 나는 다른 경로 lib/jquery/jquery.min.js
을 시도했지만 스크립트를 찾지 못했습니다. 그러나 dist/jquery.min.js
을 사용하면 스크립트를 찾을 수 있지만 원하는 버전입니다.
WebJarAssests가 jquery.min.js
을 찾을 수 있도록 구성하려면 어떻게합니까? target/web/web-modules/main/webjars/lib/jquery
? 다른 WebJars가 다른 버전의 jquery.min.js
을 내 프로젝트에로드하는 것을 어떻게 중지합니까? 감사합니다.
한편, 나는 물건을 가지려면 <script type="text/javascript" src="@routes.Assets.at("lib/jquery/jquery.min.js")"></script>
을 사용하고 있습니다.
업데이트 1
현재 설정,
class ApplicationController @Inject() (
val webJarAssets: WebJarAssets,
val silhouette: Silhouette[CookieAuthenticatorEnv],
...
) extends AuthController {...}
@(webJarAssets: WebJarAssets, ...)(implicit messages: Messages)
GET /webjars/*file controllers.WebJarAssets.at(file)
. 컨트롤러는'class MyController @Inject() (implicit webJarAssets : WebJarAssets, ...')와 같은 뷰 서명과'@ (...) (content : Html) (암시 적 webJarAssets : WebJarAssets)'와 같은 형태로 보입니다. 경로는'GET/webjars/* file controllers.WebJarAssets.at (file)'? – wwkudu
처럼'webJarAssets'는 암시 적이 지 않습니다. Guice를 통해 WebJarAssests를 주입했고 jQuery.ja를 제외한 다른 JS 라이브러리에서 작동했습니다. 문제가 있습니까? – thlim
jquery가 다를 수 없습니다. 사용자의보기 서명, 스크립트 jquery 참조, 컨트롤러 서명, 경로 및 관련 줄을 build.sbt에서 게시 할 가치가 있습니다. 사람들이 쉽게 할 수 있도록 할 수 있습니다. – wwkudu