如何在Tomcat服务器上部署reactJS应用程序

问题描述 投票:4回答:3

我是reactjs的新手,我想在tomcat服务器上部署我的reactjs应用程序而不是在反应服务器上运行,默认端口是3000.我运行npm serve命令运行npm本地服务器但是需要使用tomcat服务器访问该应用程序。

请给我任何建议。

谢谢

java reactjs tomcat deployment
3个回答
8
投票

npm run build可以触发构建过程但是它会生成代码,假设基本url没有任何相对路径,但是如果我想部署到我的服务器中的相对路径怎么办?所以我的意思是相对路径是,我在我的tomcat webapps目录中有一个simpleapp文件夹,我想从那个http://localhost/simpleapp访问我的反应应用程序。如果使用反应路由器,它会变得更加复杂。

我得到一个空白页但后来,我found Some changes 完成了反应路由器和package.json,解决了我的问题。

所以我找到的解决方案是: -

  1. 提及package.json中的主页属性 “主页”:“https://localhost:8080/simpleapp”,
  2. 对于react路由器,我们必须添加basename属性。

在上面的情况下,app将部署在simpleapp相对路径上

<Router basename={'/simpleapp'}>
  <Route path='/' component={Home} />
  {/* … */}
</Router>

1
投票

在您的反应代码的根文件夹中运行此命令。

npm run build

这会在名为“build”的文件夹中生成一个优化的生成版本,该文件夹基本上包含一个index.html页面,其中包含静态JS和CSS文件。然后,您可以将这些文件复制并粘贴到Tomcat WebContent文件夹中。

这是一个link可能会对此有所启发。


0
投票

您需要首先决定如何使用Grunt或webpack构建项目。您还可以在包json中添加npm run build等脚本,这可以触发构建过程。只需放置构建的文件并将脚本包含在index.html中,即可在任何Web服务器中使用构建的项目。

© www.soinside.com 2019 - 2024. All rights reserved.