一尘不染

如何在本地tomcat服务器上部署angular2应用程序?

tomcat

我一直在使用lite服务器开发angular2应用程序。现在,我想将此应用程序部署在tomcat服务器上以与Java后端连接。我一直在使用角度cli。我已经使用命令“
ng build
-prod”来生成dist文件夹。根据有关angular2的udemy教程,此文件夹的内容是部署angular2项目所需的全部。我将此文件夹的内容放置在java项目的WebContent文件夹中,然后在eclipse
IDE中单击绿色按钮以开始提供文件。在其他项目中,我可以通过这种方式成功部署html和javscript文件。但是对于此angular2项目,将显示“正在加载…”,并且该应用程序永远不会启动。控制台显示这些错误。

GET http:// localhost:8080 / vendor / es6-shim /
es6-shim.js
[找不到HTTP / 1.1
404 3ms] GET http:// localhost:8080 / vendor / reflect-metadata /
Reflect.js
[HTTP /
1.1 404找不到4ms] GET http:// localhost:8080 / vendor / systemjs / dist /
system.src.js
[HTTP
/ 1.1 404找不到4ms] GET http:// localhost:8080 / vendor / zone.js / dist /
zone.js
[HTTP / 1.1
404找不到4ms] GET http:// localhost:8080 / vendor / reflect-metadata /
Reflect.js
[HTTP /
1.1 404找不到1ms] GET http:// localhost:8080 / vendor / systemjs / dist /
system.src.js
[HTTP
/ 1.1 404找不到2ms] GET http:// localhost:8080 / vendor / zone.js / dist /
zone.js
[HTTP / 1.1
404找不到2ms] ReferenceError :未定义系统

这些错误对我来说似乎很奇怪,因为我恰好在这些位置看到了文件。

当我在angular2 cli项目文件夹中运行ng serve时,该应用程序运行正常。

如何在不运行light服务器的情况下将dist文件夹部署在tomcat服务器中,或者light服务器可能需要同时运行?做这个的最好方式是什么?


阅读 378

收藏
2020-06-16

共1个答案

一尘不染

我正在运行一个小脚本来构建项目,然后将其复制到tomcat。我告诉angular它将在tomcat下运行的基本目录是什么。

#!/bin/sh
ng build --base-href /angular/ --prod
mkdir -p /home/xxx/apache-tomcat-8.0.37/webapps/angular
cp -R /home/xxx/angular-clitest/dist/* /home/xxx/apache-tomcat-8.0.37/webapps/angular/

多数民众赞成在运行后,启动tomcat,您可以在以下位置访问它:http:// localhost:8080 /
angular

2020-06-16