在尝试使用Spark Web框架提供静态文件时,我在哪里放置文件?
我还没能在网上找到任何东西 - 我开始怀疑我对Eclipse和Java项目的类路径,相对路径等一无所知。
关于Spark中的静态文件的 This paragraph是指/public
,但我不知道它会在哪里。使用Windows,Eclipse Luna和我的项目转换为使用Maven。
我已经尝试过在GitHub上查看代码了,但是我试图找到它的时候有点偏离。
答案 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一样。他们只收集路径:
显示CSS方式索引获取它。
来源:https://groups.google.com/d/msg/sparkjava/5vMuK_5GEBU/vh_jHra75u0J
答案 2 :(得分:2)
在Eclipse上右键单击您的项目,选择create New - &gt;包。为新包提供名称等
将您的静态资源放在该软件包下,这样我们就可以确定它们位于您的类路径下。