【发布时间】:2015-12-16 05:55:00
【问题描述】:
简而言之,Java HBS (jknack.handlebars) 正在与父模板完全不同的目录中寻找我的 partial 模板。有谁知道如何配置 jknack.handlebars 查找部分模板的位置?
我需要避免: createLayeredHtml 中的错误.. com.github.jknack.handlebars.HandlebarsException: /com/XXX/YYY/inline@53ce2ca5.hbs:598:8: 部分 '/com/XXX/YYY/temp-templates/CarouselHeader.hbs' 找不到
这是父模板:
<div data-module="{{type}}" data-module-id="{{module_id}}" class="slick-module athena-item-page-carousel">
{{> temp-templates/CarouselHeader}}
<div class="js-carousel-n-up carousel carousel-narrow carousel-banner carousel-n-up-responsive">
{{> temp-templates/CarouselFirstTile}}
更新: 我应该说,HBS 正在查找的默认位置是我(如果这不是正确的术语,请原谅我)我在 java 中的包的主目录。它在 /src/main/java/com/company/project 中查找。有没有办法将它指向 /src/main/resources 之类的东西?
这是完整的错误:
[ERROR] 2015-09-18 17:23:34.688 [main]
Error in createLayeredHtml..
com.github.jknack.handlebars.HandlebarsException: /com/XXX/YYY/inline@53ce2ca5.hbs:598:8: The partial '/com/XXX/YYY/temp-templates/CarouselHeader.hbs' could not be found
at com.github.jknack.handlebars.internal.Partial.merge(Partial.java:142)
at com.github.jknack.handlebars.internal.BaseTemplate.apply(BaseTemplate.java:128)
at com.github.jknack.handlebars.internal.TemplateList.merge(TemplateList.java:61)
at com.github.jknack.handlebars.internal.BaseTemplate.apply(BaseTemplate.java:128)
at com.github.jknack.handlebars.internal.BaseTemplate.apply(BaseTemplate.java:115)
at com.github.jknack.handlebars.Options.apply(Options.java:271)
at com.github.jknack.handlebars.Options.fn(Options.java:237)
at com.github.jknack.handlebars.Options.fn(Options.java:226)
at com.github.jknack.handlebars.helper.IfHelper.apply(IfHelper.java:51)
at com.github.jknack.handlebars.internal.Block.merge(Block.java:160)
at com.github.jknack.handlebars.internal.BaseTemplate.apply(BaseTemplate.java:128)
at com.github.jknack.handlebars.internal.TemplateList.merge(TemplateList.java:61)
at com.github.jknack.handlebars.internal.BaseTemplate.apply(BaseTemplate.java:128)
at com.github.jknack.handlebars.internal.BaseTemplate.apply(BaseTemplate.java:115)
at com.github.jknack.handlebars.internal.ForwardingTemplate.apply(ForwardingTemplate.java:82)
at com.github.jknack.handlebars.internal.ForwardingTemplate.apply(ForwardingTemplate.java:60)
at com.XXX.YYY.utils.HandlebarUtils.render(HandlebarUtils.java:80)
at com.XXX.YYY.AthenaLayeredAsset.createLayeredHtml(AthenaLayeredAsset.java:68)
at com.XXX.YYY.AthenaSlickCarousel.generateNarrowCarouselHTML(AthenaSlickCarousel.java:27)
at com.XXX.YYY.TestAthenaLayeredAsset.testNarrowCarouselSimple(TestAthenaLayeredAsset.java:387)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.testng.internal.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:84)
at org.testng.internal.Invoker.invokeMethod(Invoker.java:714)
at org.testng.internal.Invoker.invokeTestMethod(Invoker.java:901)
at org.testng.internal.Invoker.invokeTestMethods(Invoker.java:1231)
at org.testng.internal.TestMethodWorker.invokeTestMethods(TestMethodWorker.java:127)
at org.testng.internal.TestMethodWorker.run(TestMethodWorker.java:111)
at org.testng.TestRunner.privateRun(TestRunner.java:767)
at org.testng.TestRunner.run(TestRunner.java:617)
at org.testng.SuiteRunner.runTest(SuiteRunner.java:334)
at org.testng.SuiteRunner.runSequentially(SuiteRunner.java:329)
at org.testng.SuiteRunner.privateRun(SuiteRunner.java:291)
at org.testng.SuiteRunner.run(SuiteRunner.java:240)
at org.testng.SuiteRunnerWorker.runSuite(SuiteRunnerWorker.java:52)
at org.testng.SuiteRunnerWorker.run(SuiteRunnerWorker.java:86)
at org.testng.TestNG.runSuitesSequentially(TestNG.java:1224)
at org.testng.TestNG.runSuitesLocally(TestNG.java:1149)
at org.testng.TestNG.run(TestNG.java:1057)
at org.testng.remote.RemoteTestNG.run(RemoteTestNG.java:111)
at org.testng.remote.RemoteTestNG.initAndRun(RemoteTestNG.java:204)
at org.testng.remote.RemoteTestNG.main(RemoteTestNG.java:175)
at org.testng.RemoteTestNGStarter.main(RemoteTestNGStarter.java:125)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at com.intellij.rt.execution.application.AppMain.main(AppMain.java:134)
【问题讨论】:
-
this 有帮助吗?
-
您似乎在混淆类路径路径和本地绝对路径。
-
这个 Maven 有什么关系?
-
你们谁愿意正式回答这个问题?明天它将“自动分配”赏金,但我无法得到它;)
-
塔索斯和罗曼,谢谢!!!!
标签: java maven templates handlebars.js partials