当前位置: 首页 > 知识库问答 >
问题:

错误解析模板,模板可能不存在或任何配置的模板解析器都无法访问

呼延靖
2023-03-14

我有以下控制器:

@Controller
public class ConfigController {

    @GetMapping("/")
    public String index() {
        return "config";
    }
}

但是,我在前往路线时收到以下错误:

There was an unexpected error (type=Internal Server Error, status=500).
Error resolving template [config], template might not exist or might not be accessible by any of the configured Template Resolvers
org.thymeleaf.exceptions.TemplateInputException: Error resolving template [config], template might not exist or might not be accessible by any of the configured Template Resolvers

我有一个config.html文件里面的资源/模板

我的pom。xml文件:https://pastebin.com/yqYYuXWh

我做错了什么?

我已经尝试添加了一个。返回控制器函数,但它仍然不起作用。

删除spring-web依赖项后(我已经有了spring-boot-starter-web)我现在在启动Spring时收到以下错误:

找不到模板位置:classpath:/templates/(请添加一些模板或检查您的Thymeleaf配置)


共有2个答案

东门玺
2023-03-14
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
    </dependency>
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-web</artifactId>
        <version>5.3.20</version>
    </dependency>

第二个依赖项不是必需的。


    <build>
<!--not required. Spring boot scans /resources directory by default 
        <resources>
            <resource>
                <directory>src/main/resources</directory>
                <filtering>true</filtering>
                <includes>
                    <include>application.properties</include>
                </includes>
            </resource>
        </resources>
-->
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>

请重新生成并重新启动应用程序。

您不需要添加。控制器中的html扩展。Spring boot查找<代码>。html。默认情况下,这些目录中的jsp扩展名分别为:src/main/resource、src/main/resource/templates、src/main/resource/static、src/main/resource/public

龙嘉玉
2023-03-14

问题在您的pom中。xml文件。

通过将此块添加到构建中;

<resources>
    <resource>
        <directory>src/main/resources</directory>
        <filtering>true</filtering>
        <includes>
            <include>application.properties</include>
        </includes>
    </resource>
</resources>

您已经覆盖了spring-boot-starter-父自己的资源块,并使其包含application.properties而不包含其他内容。将其从pom.xml中删除并删除目标目录。

 类似资料: