我使用spring boot并将静态内容(html、css等)存储为src/main/webapp
。我理解不建议这样做,因为它不会存储在jar文件中(应该存储在/META-INF/resources/
、/resources/
、/static/
、/public/
)。但我的问题不是关于在jar中存储静态内容。
这是项目结构:
App
├──src
| └───main
| ├── java
| | └── ...
| ├── resources
| | └── (everything here will be in jar)
| └── webapp <- this won't be in jar
| └── ...
└ target
└───App.jar
如何从目标文件夹运行app.jar
并让Spring Boot查找静态内容?它与类路径有关吗?我试图用-cp
选项指定类路径,但它不起作用。
有一种观点认为这是一个构建问题。我不是指包装问题(我知道你不想把它放进罐子里)。但是您还有另一个选择:您的构建系统(例如Maven)可以将静态文件复制到目标文件夹中。
这个答案演示了如何使用maven-antrun-plugin
调用Ant的copy
命令。这将把静态文件的副本放入target
文件夹中。
显然要更改执行阶段(测试阶段对于您的用例来说太具体/太晚了)。也许还可以查找是否有更适合的方法来完成这一任务(因为委托给Ant并不是一个非常习惯的方法)。
注意: 本教程假定你已经下载和安装了CodeIgniter开发环境。 首先,你需要创建一个可以处理静态内容请求的控制器类。控制器,是一个用来代理完成某项任务的PHP类,它充当基于MVC架构应用程序的“粘合剂”(译者注:控制器用来粘合/协调不同模型和视图。随着教程的深入,你会更深刻的理解这一点)。 举例来说,假设存在某个针对如下URL的请求: http://example.com/news/late
Note: 这篇教程假设你已经下载好 CodeIgniter ,并将其 安装 到你的开发环境。 你要做的第一件事情是新建一个 控制器 来处理静态页面,控制器就是一个简单的类, 用来完成你的工作,它是你整个 Web 应用程序的 “粘合剂” 。 例如,当访问下面这个 URL 时: http://example.com/news/latest/10 通过这个 URL 我们就可以推测出来,有一个叫做 "n
问题内容: 我无法编译以下代码: 出现以下错误: 无法从静态内容引用非静态方法calcArea(int,int) 这是什么意思?我该如何解决该问题..? 编辑: 根据您的建议,我创建了一个新的test()实例,如下所示: 这样对吗?如果我这样做有什么区别… 问题答案: Nanne提出的建议绝对可以解决您的问题。但是,我认为如果现在就养成习惯,在学习Java的早期阶段,尝试尽可能少地使用静态方法(例
问题内容: Express和connect似乎已删除其gzip功能,因为它们效率太低。目前,对于express-js的gzip是否有可靠的解决方案? 问题答案: Connect 2.0 添加了对基于新zlib东西的compress()中间件的支持,而这些东西刚刚出现在Node Core API中。 通过在文件中添加连接2.0的依赖关系,可以在快速服务器中使用此功能: 然后将以下逻辑应用于快速应用程
现在,我有一个简单的Spring Boot应用程序,它为静态图像提供服务,我将这些图像放在了resources/static/img中。这对于显示实际内容来说很好,但我想解决两件事: > 我不希望这些图像中的任何一个与生成的文件捆绑在一起,我知道将这些图像放在文件夹中会做到这一点。 使用我当前的设置,为了在webapp上看到新图像,我必须将其添加到文件夹并重新启动。相反,我希望Spring提供特定
问题内容: 我在两个不同的容器(Tomcat和Jetty)上部署了一个webapp,但是它们用于提供静态内容的默认servlet具有处理我要使用的URL结构的不同方式(详细信息)。 因此,我希望在web应用程序中包含一个小型servlet,以提供其自己的静态内容(图像,CSS等)。Servlet应该具有以下属性: No external dependencies Simple and reliab