在哪里放置Spark Web Framework的静态文件?

时间:2015-01-24 13:21:46

标签: java eclipse maven spark-java

在尝试使用Spark Web框架提供静态文件时,我在哪里放置文件?

我还没能在网上找到任何东西 - 我开始怀疑我对Eclipse和Java项目的类路径,相对路径等一无所知。

关于Spark中的静态文件的

This paragraph是指/public,但我不知道它会在哪里。使用Windows,Eclipse Luna和我的项目转换为使用Maven。

我已经尝试过在GitHub上查看代码了,但是我试图找到它的时候有点偏离。

3 个答案:

答案 0 :(得分:50)

首先你必须告诉Spark在哪里搜索这样的静态文件:

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

在2.5之前的Spark版本中,您应该使用:

Spark.staticFileLocation("/public");

然后您的项目应该在资源文件夹下有一个public文件夹,如下所示

/src/main/resources/public/style.css

例如,我在那里添加了style.css文件,因此您应该像这样访问它:

http://localhost:4567/style.css


如果要提供非类路径文件夹,则应使用

Spark.staticFiles.externalLocation("/path/to/dir");

在2.5之前的Spark版本中,您应该使用:

Spark.externalStaticFileLocation("/path/to/dir");

答案 1 :(得分:3)

我将样式表放在静态内容下面,如下所示:

staticFileLocation( "/web" );
/web/
  |-- index.html
  +-- styles/
        +
        +--- default.css

和index.html

... <link href="styles/default.css" rel="stylesheet"   type="text/css" />

我还有其他生成的HTML页面和freemarker一样。他们只收集路径:

  • /styles/default.css或
  • 本地主机:8081 /风格/ default.css

显示CSS方式索引获取它。

来源:https://groups.google.com/d/msg/sparkjava/5vMuK_5GEBU/vh_jHra75u0J

答案 2 :(得分:2)

  1. 在Eclipse上右键单击您的项目,选择create New - &gt;包。为新包提供名称等

  2. 将您的静态资源放在该软件包下,这样我们就可以确定它们位于您的类路径下。

  3. 在您的Main class colde中,调用staticFileLocation(“yourpackagename /”);