class path resource [XX] cannot be resolved to absolute file path because it does not reside
3942 ワード
コードには
メールテンプレートファイルをロードし、ローカルテスト木を開発するのに問題がありますが、サーバーにターゲットファイルが見つかりません.ログを表示すると、次のエラーが表示されます.
ターゲットファイルが見つからないのは明らかで、ローカルブレークポイントはResourceUtils処理ロジックを見て、fileファイルパスを使用しています.ローカル起動はtargetの下の東で、jarファイルを実行するわけではありませんので、ファイルパスに問題はありません.
サーバはjarファイルを実行していますが、fileファイルのパスが見つかりません.ClassPathResourceを使用して、classpathのリソースファイルストリームを直接取得できます.
すべてspringの下のコンポーネントで、比較的簡単です.
File file = ResourceUtils.getFile("classpath:filename");
BufferedReader reader = new BufferedReader(new InputStreamReader(new FileInputStream(file)));
メールテンプレートファイルをロードし、ローカルテスト木を開発するのに問題がありますが、サーバーにターゲットファイルが見つかりません.ログを表示すると、次のエラーが表示されます.
java.io.FileNotFoundException: class path resource [templates/html/welcome.vm]
cannot be resolved to absolute file path because it does not reside in the file system:
jar:file:/D:/workspace_new/rcs/target/star-admin.jar!/BOOT-INF/classes!/templates/html/welcome.vm
ターゲットファイルが見つからないのは明らかで、ローカルブレークポイントはResourceUtils処理ロジックを見て、fileファイルパスを使用しています.ローカル起動はtargetの下の東で、jarファイルを実行するわけではありませんので、ファイルパスに問題はありません.
サーバはjarファイルを実行していますが、fileファイルのパスが見つかりません.ClassPathResourceを使用して、classpathのリソースファイルストリームを直接取得できます.
ClassPathResource cpr = new ClassPathResource("file");
BufferedReader reader = new BufferedReader(new InputStreamReader(cpr.getInputStream()));
FileCopyUtils.copyToString(reader);
すべてspringの下のコンポーネントで、比較的簡単です.