Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jsp/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Maven 如何在JSP中从/main/resources链接web资源文件?_Maven_Jsp_Resources - Fatal编程技术网

Maven 如何在JSP中从/main/resources链接web资源文件?

Maven 如何在JSP中从/main/resources链接web资源文件?,maven,jsp,resources,Maven,Jsp,Resources,我的JavaWebApp中有以下结构 -- main -- java -- resources -- lib -- css -- style.css -- webapp -- WEB-INF -- web.xml --index.jsp 如何将style.css链接到我的索引jsp <link rel="stylesheet" href="???"> 这里应该有什

我的JavaWebApp中有以下结构

-- main
   -- java
   -- resources
      -- lib
         -- css
            -- style.css
   -- webapp
      -- WEB-INF
         -- web.xml
      --index.jsp
如何将style.css链接到我的索引jsp

<link rel="stylesheet" href="???">

这里应该有什么


提前感谢

您需要将要交付给客户的资产放在您的
webapp
目录下。否则,您将需要编写一个servlet来交付它们


您可以在.Maven
/main/resources
文件夹的第10章中找到所有的细节,该文件夹用于不表示Java类的类路径资源,例如i18n属性文件和各种配置文件(文本、xml、json等)。它正是您希望通过
ClassLoader\getResourceAsStream()
获得的资源

该文件夹不用于公共web资源(即公共
http://xxx
URL)。您应该将这些web资源文件放在Maven
/main/webapp
文件夹中(在
/web-INF
/META-INF
之外),就像您对JSP文件(也是公共web资源)所做的一样

因此,只需将
/lib
文件夹向下移动(我个人也会将该文件夹重命名为“resources”、“assets”或“static”,这更符合事实上的标准;“lib”文件夹名称意味着它充满了JAR文件)

main
|--爪哇
|--资源
`--网络应用
|--解放党
|`--css
|`--style.css
|--WEB-INF
|`--web.xml
`--index.jsp
给定此结构,示例部署上下文路径为
/webapp
,示例服务器运行于
http://localhost:8080
,CSS文件应可通过以下绝对URL访问:

因此,JSP页面的HTML表示中的以下任何CSS链接都应该:

<link rel="stylesheet" href="http://localhost:8080/webapp/lib/css/style.css" />




你挑吧。鉴于目标URL其他部分的动态性,建议使用最后一个

另见:

您能详细介绍一下吗?
<link rel="stylesheet" href="//localhost:8080/webapp/lib/css/style.css" />
<link rel="stylesheet" href="/webapp/lib/css/style.css" />
<link rel="stylesheet" href="${pageContext.request.contextPath}/lib/css/style.css" />