我在嘗試使用Vertex的HandleBars模板引擎的模板時不斷掙扎着NoSuchFileException。 我個人認爲醚Vertx文件系統的根目錄不一致,或者我失去了一些東西,代碼片段如下:Vert.x文件根與Handlebars模板位置
String templateLocation = "templates"+File.separator+"index.hbs";
fs = vertx.fileSystem();
fs.exists(templateLocation, existHandler -> {
if(existHandler.succeeded() && existHandler.result() == true){
engine.render(context,templateLocation, renderResult -> {
if (renderResult.succeeded()) {
context.request().response().putHeader("Content-Type", "text/html");
context.response().end(renderResult.result());
} else {
context.fail(renderResult.cause());
}
});
杉杉,我通過存在確認,確實目錄和模板文件存在。如果是的話,他們開始呈現在同一個目錄下的動作,我掉進:
java.nio.file.NoSuchFileException: \emplates\index.hbs
事件雖然文件系統要求的目錄存在。 HandleBars希望能找到它的模板? 我已經複製/粘貼文件夾templates/index.hbs
所有可能的地點:
- 項目根
- 的src /資源Java所在的主要執行
都沒有成功
另外請注意丟失t
的例外情況,不是錯字,看起來像是堆棧裏的東西處理得不好路徑
'\ emplates \ index.hbs'(缺少't')很奇怪,是一個錯字,還是堆棧中有反斜槓有問題的東西? (不熟悉Vert.x) –
好點,最近注意到了。有東西在路上吃掉第一個字符。我在開始時添加了虛擬字符,進程繼續失敗 – Tomas
您可以使用正斜槓代替,java [將處理它們](https://stackoverflow.com/a/19762195/6730571) –