我有一个新的angular2项目,它是使用快速入门中描述的标准文件结构构建的.我正在尝试构建一个API网关并使用spring-boot host我的应用程序,但是我无法配置启动以在我的项目中使用/ dist目录创建生成的源.项目结构如下:
project
|--dist
|--node_modules
|--src
| |--app
| |--assets
| |--main
| | |--java
| | |--resources
| | | |--config
| | |--webapp
| | | |--WEB-INF
我想使用default / dist目录,这样我仍然可以使用npm / webpack在UI上进行持续开发.
我尝试像这样配置静态资源目录:
spring.resources.staticLocations: /dist
但这似乎并没有起作用.
我创建了一个资源处理程序,直接指向dist目录:
@Configuration
public class WebMvcConfiguration extends WebMvcConfigurerAdapter {
@Override
public void addResourceHandlers(final ResourceHandlerRegistry registry) {
String currentPath = new File("./").getAbsolutePath();
currentPath = "file:///" + currentPath;
registry.addResourceHandler("/**").addResourceLocations(currentPath + "/dist/");
}
}
这解决了部分问题,但现在我的根URL(‘/’)不再映射到index.html.
有没有更简单/更好的方法来配置spring-boot来查找/ dist项目目录?我的项目结构应该改变吗?我真的希望让所有这些部分干净利落地合作.
解决方法:
Spring Boot会自动添加静态Web资源
位于以下任何目录中:
/META-INF/resources/
/resources/
/static/
/public/
这些文件夹与src / main / resources相关
如果您将index.html放在下面,那么spring可以为您的文件提供服务
没有任何配置.
src/main/resources/META-INF/resources/index.html
src/main/resources/resources/index.html
src/main/resources/static/index.html
src/main/resources/public/index.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。