質問: new ModelAndView(new ExcelBuilder(resource.getFile())); } catch (IOException e) { e.getStackTrace(); } ``` ExcelBuilderにFileを渡して、Excel操作しています。
回答: 自己解決しました。 Ideとjarではファイルの読み込み方を変えなければならないとのことでした。 下記、変更後のコードです。 ありがとうございました。 ``` File file = null; String resourceStr = "/files/template.xlsx"; URL res = getClass().getResource(resourceStr); // IDE実行とjarファイル実行で分岐させる if (res.toString().startsWith("jar:")) { try { InputStream input = getClass().getResourceAsStream(resourceStr); file = File.createTempFile("tempfile", ".tmp"); FileUtils.copyInputStreamToFile(input, file); file.deleteOnExit(); } catch (IOException e) { e.getStackTrace(); } } else { // IDE用 file = new File(res.getFile()); } if (file != null && !file.exists()) { throw new RuntimeException("Error: File " + file + " not found!"); } mav = new ModelAndView(new ExcelBuilder(file)); return mav; ```