2

srcのパッケージに静的コンテンツを含む.tplファイルがあります。たとえばsrc/A/B/C/test.tpl、私はそのファイルの兄弟であるクラスからそれを読み取ろうとしています(src/A/B/C/Test)。

なかなか見つからない!FileReaderはFileNotFoundExceptionをスローします。

解決策: Class.getResource()は機能します。問題は、デフォルトではコンパイルされないtpl拡張子に関するものです。IDEには、コンパイルする拡張機能を追加する設定があります。コンパイラ設定を更新する代わりに.htmlを使用しました。

Test.class.getResource("/A/B/C/test.html").getPath().replace("%20", " ")
4

2 に答える 2

3

ClassLoader.html#getResourceAsStreamを使用する必要があります

getClassloader().getResourceAsStream(resourcePath);
于 2012-12-11T14:30:38.097 に答える
0

ファイルを src/main/resources に移動してから、次のようなことを試してみてください-

ApplicationContext context = new ClassPathXmlApplicationContext("classpath:/test.tpl");

    try {

        context.getClassLoader().getResourceAsStream("test.tpl");

       ...
        } 
   catch (IOException ex) {
        ex.printStackTrace();
    }
于 2012-12-11T14:34:41.897 に答える