Kotlin Web App | 链接的CSS文件

我是Kotlin和Java中的新成员,并以此示例开始: https : //kotlinlang.org/docs/tutorials/httpservlets.html

我使用Gradle来构建应用程序,并使其工作。 在下一步我试图链接一个CSS文件,但我总是得到404错误。 我在这里创建了css文件:src / main / resources / css / style.css

Gradle将文件复制到这个位置:build / resources / main / css / style.css,我用这个路径把它链接到源代码中。

package org.jetbrains.kotlin.demo import javax.servlet.annotation.WebServlet import javax.servlet.http.HttpServlet import javax.servlet.http.HttpServletRequest import javax.servlet.http.HttpServletResponse @WebServlet(name = "Hello", value = "/hello") class HomeController : HttpServlet() { override fun doGet(req: HttpServletRequest, res: HttpServletResponse) { res.writer.write(myView("nice headline")) } fun myView(headline: String ): String { var content = """<!DOCTYPE html><html> |<head> |<link href="./build/resources/main/css/style.css" rel="stylesheet"> |</head> |<body><h1>$headline</h1></body> |</html>""".trimMargin() return content } } 

任何想法这里有什么问题? 谢谢!

您需要为CSS文件提供服务,因为浏览器正在尝试读取服务器上未提供的路径,所以您不能只有文件系统的相对链接。

如果你在/style.css提供它,那么你可以把href的值作为style.css ,否则你想把值作为css文件的路径,如果它以/开始,或者是相对的否则/你好。

最简单的方法是将其作为第二个servlet添加到服务器上,路径为style.css 。 有更好的方法,但这些往往是服务器的依赖。