Angular 2个人资料和tomcat

时间:2017-06-08 12:18:28

标签: angular tomcat spring-boot profiles

目前我正在运行后端springboot应用程序和前端Angular2应用程序。

当我们在本地/开发/接受环境之间切换时,我们不想更改代码,我们只想让我们的tomcat知道我们想要使用哪个版本的部署。

对于我的后端,我能够遵循本指南https://www.javacodegeeks.com/2012/06/spring-31-profiles-and-tomcat.html

现在我也想为我的前端Angular2应用程序做这个,但我真的不知道如何开始或在哪里看。

谢谢

1 个答案:

答案 0 :(得分:2)

这可能不是最好的答案,但有一种方法可能是这样的:

1)在你的package.json中定义你的不同构建目标(为了简洁,我省略了除output-path之外的所有选项),它们将使用不同的目录作为输出:

"scripts": {
    "build-prod": "ng build --output-path dist-prod",
    "build-dev": "ng build --output-path dist-dev"
 }

2)在构建Servlet时,让Maven(或您最喜欢的构建工具)构建所有Angular变体。确保所有变体都将与servlet一起部署。

3)为您的不同环境添加配置,为正确的路径添加ResourceHandler,具体取决于该环境。我还没有使用过Springboot,所以这里是一个来自常规Spring MVC Java Config的Snippet:

@Configuration
@Profile("dev")
public class DevConfig {

    @Override
    public void addResourceHandlers(ResourceHandlerRegistry registry) {

        registry.addResourceHandler("/**").addResourceLocations("/dist-dev/")
                .resourceChain(true).addResolver(new PathResourceResolver());
    }

}

希望这会有所帮助,直到有人有更好的想法。 : - )