Spring Maven:无法加载Javascript文件

Spring Maven:无法加载Javascript文件,java,javascript,css,spring,maven,Java,Javascript,Css,Spring,Maven,下面是我的应用程序的文件夹结构 我在webapp下创建了一个resource文件夹,其中包含CSS和JS的资源文件夹 在servlet上下文文件中,我已将资源映射到resources/inspiremetheme,如下所示 <mvc:resources mapping="/resources/**" location="/resources/inspiremetheme/" /> <head> <script type="text/javascript"

下面是我的应用程序的文件夹结构

我在webapp下创建了一个resource文件夹,其中包含CSSJS的资源文件夹

在servlet上下文文件中,我已将资源映射到resources/inspiremetheme,如下所示

<mvc:resources mapping="/resources/**" location="/resources/inspiremetheme/" />
<head>
    <script type="text/javascript" src="/resources/js/jquery-1.11.1.js"></script>
    <script type="text/javascript" src="/resources/js/inspireme.js"></script>
    <link type="text/css" rel="stylesheet" href="<c:url value="resources/css/global.css"/>" />
</head>
Inspireme | |------ META-INF | |------resources --> inspiremetheme --> css and js folders | |------ WEB-INF --> classes, jsp, lib, web.xml

我已经在JSP页面中包括如下内容

<mvc:resources mapping="/resources/**" location="/resources/inspiremetheme/" />
<head>
    <script type="text/javascript" src="/resources/js/jquery-1.11.1.js"></script>
    <script type="text/javascript" src="/resources/js/inspireme.js"></script>
    <link type="text/css" rel="stylesheet" href="<c:url value="resources/css/global.css"/>" />
</head>
Inspireme | |------ META-INF | |------resources --> inspiremetheme --> css and js folders | |------ WEB-INF --> classes, jsp, lib, web.xml

这里的问题是我无法在正确加载CSS文件的地方加载JS文件。 我无法理解我错过了什么

更新-1: 解压后的文件结构如下:

<mvc:resources mapping="/resources/**" location="/resources/inspiremetheme/" />
<head>
    <script type="text/javascript" src="/resources/js/jquery-1.11.1.js"></script>
    <script type="text/javascript" src="/resources/js/inspireme.js"></script>
    <link type="text/css" rel="stylesheet" href="<c:url value="resources/css/global.css"/>" />
</head>
Inspireme | |------ META-INF | |------resources --> inspiremetheme --> css and js folders | |------ WEB-INF --> classes, jsp, lib, web.xml 灵感 | |------META-INF | |------资源-->灵感主题-->css和js文件夹 | |------WEB-INF-->类、jsp、库、WEB.xml 您将
混入脚本标记

<c:url value="/resources/js/jquery-1.11.1.js" var="myUrl" />
<script type="text/javascript" src="${myUrl}"/><!-- comment --></script>

还要在内部添加注释:这将防止jspx解析器最小化标记

如果解析器最小化您的标记,您将得到以下结果:

<script type="text/javascript" src="/WEBAPP/resources/js/jquery-1.11.1.js"/> 

而不是

<script type="text/javascript" src="/WEBAPP/resources/js/jquery-1.11.1.js"></script>

如果您决定使用Java配置而不是xml,这可能会导致某些浏览器无法工作,请选择以下解决方案

@配置
@EnableWebMvc
@组件扫描
公共类WebConfig实现WebMVCConfiguer{
@凌驾
公共无效配置ViewResolver(ViewResolver注册表){
jsp(“/WEB-INF/jsp/”,“.xml”);
}
@凌驾
public void addResourceHandlers(ResourceHandlerRegistry注册表){
registry.addResourceHandler(“/inspiremetheme/css/**”和“/inspiremetheme/js/**”)
.addResourceLocations(“classpath:/inspiremetheme/css/”,“classpath:/inspiremetheme/js/”;
}
@凌驾
公共无效配置DefaultServletHandling(DefaultServletHandlerConfigurer-configurer){
configurer.enable();
}
}

您是否检查了.war文件?尝试解压(取消绑定)它,看看它是如何构建的。那么“资源”和“js”之间的“inspiremetheme”目录呢?您的路径不包含该内容。@Pointy我在Spring上下文文件中给出了路径。是的,但是
标记不包括它。浏览器对您的Spring配置一无所知。@ElGuapo解压后,我已更新了文件结构。请看一看。+1工作起来很有魅力。我也可以知道原因吗?我错过了什么。。为什么它以前不起作用?@Che评论的原因是什么?啊。。它以前不起作用的原因是什么。。?如果我给出了整个路径,假设我没有在上下文文件中提到位置,那么我将如何给出路径?@Che没有c:url,您的html中将有:。使用c:url,您将拥有:。在第一种和第二种情况下,检查从浏览器生成的html代码以查看发生了什么:)