【问题标题】:Can't load Spark static sub-directories无法加载 Spark 静态子目录
【发布时间】:2017-04-16 04:06:09
【问题描述】:

这是我的问题:

  • 我在我的 Java 项目中使用 Spark 作为我的 Web 服务器框架。
  • 我的网站设计如下结构:
    • Index.html
    • js 文件夹(包含 JavaScript 库和文件)
    • css 文件夹(带样式)
    • 图片文件夹(带图片)

我将此结构复制到我的“公共”文件夹(在资源下),就像在 Spark 文档中一样。并使用以下方法将此文件夹添加为静态文件夹:

staticFiles.location("/public");
init();

但现在,只能访问“/public”中的文件和文件夹的直接子级,即:

  • [localhost]:[port]/index.html - 有效
  • [localhost]:[port]/js/main.js - 有效
  • [localhost]:[port]/js/lib/lib.js - 不起作用 - 404
  • [localhost]:[port]/css/myTheme/greenTheme.css - 不起作用 - 404

如何将所有子目录包含为静态文件?

谢谢。

更新: 如果我打开一个在 NetBeans 中找不到的文件,请添加一个新行并保存该文件 - 稍后在我运行程序时可以找到该文件!为什么会这样?

【问题讨论】:

  • 您找到问题的原因了吗?我只是自己尝试了一下,它开箱即用。我很好奇为什么它不适合你。
  • 可能是这些目录的权限问题?
  • @Yevgeniy 它仅在我加载静态 EXTERNAL 文件夹时才有效,但如果我想从类文件中加载文件(将所有文件放在 Java 包中),那么它仍然不起作用。
  • @SHG 这不是权限问题,因为这些文件位于我的资源文件夹中,并且与其余文件夹具有相同的权限。

标签: java jetty spark-java


【解决方案1】:

如果有人遇到此问题 - 您应该:

  1. 清理您的项目。
  2. 重新构建它。
  3. 然后尝试运行它(单击“播放”按钮)。

为我工作(使用 NetBeans IDE)。

【讨论】:

  • 您的答案似乎仅在特定 IDE 的上下文中才有意义。你应该提到这是哪个 IDE,但它听起来像 Eclipse。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-04-05
  • 1970-01-01
  • 2015-03-10
  • 1970-01-01
  • 2017-02-01
相关资源
最近更新 更多