• web项目资源路径找不到 | Failed to load resource: the server responded with a status of 404 () | Uncaught ReferenceError: $ is not defined


    由第二版衍生的最简单粗暴直接爽快的处理方式,删除out目录下对应项目部署的文件夹,重启服务器(如果部署的文件没了会自动重新编译),问题解决!...


    最下面的第一版解决方式,很繁杂,但是等我做完之后回头看,发现自己费那么大劲,原来找的只是IDEA的out目录下的内容,所以此处给出第二版答案

    去你的IDEA对应项目路径的out文件夹下,按照你的项目的部署包的名,下面就是你项目的真实部署路径,用这个路径作为根路径来匹配你写的资源路径,将资源路径改为吻合部署目录的形式即可

    • 如何确定out文件夹,左侧 Project中找不到的话,可以去Project Structure中找

    • 如何找到部署的war包的名

      • 去你当前项目的服务器的配置中的Deployment中

    第一版答案

    - 项目起因 jQuery文件找不到
    - 一. 确认自己的路径和项目中的一致
      - 相对路径从引用语句所在位置开始计算
      - 绝对路径是从项目虚拟路径开始,可以用${pageContext.request.contextpath}得到,可看做webapp是根目录,写webapp之后的路径即可
    - 二、项目路径和实际部署路径不一致(本质解决)
      - 运行服务器,去IDEA的控制台启动日志中,CATALINA_BASE对应的目录下,其中的conf下的Catalina文件夹下的localhost的`项目虚拟目录.xml` 文件中的docBase后定义着该项目服务器的路径,从这个路径可以找到项目的实际部署文件位置
      - 去实际部署文件位置,在该位置下与要查找的jQuery资源路径比对,将IDEA上的路径改为实际部署位置的路径即可解决
    - 我遇到的是项目中js文件夹名为小写js,但是实际部署里为大写Js,可能是之前写的大写Js后来又修改了,实际部署未改变导致,重新构建工程和重新部署服务器未解决,所以最好还是去该位置亲自查看(手动删除实际部署的目录再重新部署应该可以解决)
    

    • 以IDEA的目录为准 出现

    • 去对应目录下的conf的Catalina的对应ip下找到的IDEA对该项目的配置文件(此处为本地ip,因此为localhost)

    • 打开,找到里面的docBase的目录,打开该目录

    • 以实际部署目录为准 正常
    • bug已解决
  • 相关阅读:
    客户端不能连接MySQL
    Linux 7.x 防火墙&端口
    MYSQL.版本查看-LINUX
    Java之.jdk卸载-Linux
    Redis.之.环境搭建(集群)
    Elasticsearch.安装插件(head)
    Linux安装Nodejs
    Linux.ls 查看常用参数
    Elasticsearch.安装(单节点)
    Andrew NG 机器学习编程作业3 Octave
  • 原文地址:https://www.cnblogs.com/akanga/p/11546908.html
Copyright © 2020-2023  润新知