renren-fast部署发布教程(tomcat)

说明:renren的开发文档需要付费,官方的生产部署介绍相对比较简单,因此记录自己的部署过程

为了方便,前后端我都部署在同一台linux服务器上,其中前端使用tomcat部署

后端部分

  • 后端就是打成jar包,这部分只要能在开发环境跑起来,maven install一下就可以了,一般不会有问题

打包后再服务器上运行,如下:

java -jar renren-fast.jar --spring.profiles.active=test		#这里以测试服务器为例

记得提前修改好application.yml文件

执行命令后浏览器打开http://ip:port/renren-fast/swagger/index.html

前端部分

  • 关于前端,官方推荐是部署在nginx的,这里为了方便我是部署在tomcat上的
  1. 在打包前准备:

    • 修改/config/index.js中assetsPublicPath,dev和build两部分都修改,否侧部署tomcat打开页面会是白屏,如下:

    • 修改/src/router/index.js,如下:

      const router = new Router({
      base: '/Test/', //**在tomcat的webapps文件夹下新建同名目录,打包后文件放置其中
      mode: 'history', //**hash修改为history后,可去除url上的#号
      scrollBehavior: () => ({ y: 0 }),
      isAddDynamicMenuRoutes: false, // 是否已经添加动态(菜单)路由
      routes: globalRoutes.concat(mainRoutes)
      })
  2. 进入renren-fast-vue目录,命令行执行npm run build进行打包,其中很可能会遇到以下问题

    • 问题:

      fs.js:35 } = primordials;
      ^
      ReferenceError: primordials is not defined

      这个问题gulp版本导致的,可以查看package.json,发现gulp版本是3.9.1,我们的node是12,版本不匹配引起的报错,详细参考:https://github.com/gulpjs/gulp/issues/2324

    • 解决方法:

      网上的解决方法主要是升级gulp版本到4以上,或node回退到10版本,其实还有不用升级或回退的方法:

      在renren-fast-vue目录,新建npm-shrinkwrap.json文件,输入以下内容:

      {
      "dependencies": {
      "graceful-fs": {
      "version": "4.2.2"
      }
      }
      }

      随后,执行以下命令:

      npm install	#再次安装依赖
      npm run build #打包

      此时我们发现没有报错了,可以正常打包,此方法亲测有效

      详细解决方案参考这里:https://stackoverflow.com/questions/55921442/how-to-fix-referenceerror-primordials-is-not-defined-in-node

    • 打包完成后,我们可以在./dist目录查看

将这三项内容放置到tomcat的/webapps/Test下,启动tomcat即可

至此我们就成功将前后端打包在服务器上部署了,可以使用浏览器访问

renren-fast部署发布教程(tomcat)的更多相关文章

  1. Solr7.3.0入门教程,部署Solr到Tomcat,配置Solr中文分词器

    solr 基本介绍 Apache Solr (读音: SOLer) 是一个开源的搜索服务器.Solr 使用 Java 语言开发,主要基于 HTTP 和 Apache Lucene 实现.Apache ...

  2. maven自动部署到远程tomcat教程

    使用maven的自动部署功能可以很方便的将maven工程自动部署到远程tomcat服务器,节省了大量时间. 本文章适用于tomcat的7.x ,8.x, 9.x版本. 下面是自动部的步骤 1,首先,配 ...

  3. Tomcat部署发布JSP应用程序的三种方法 (转)

    Tomcat部署发布JSP应用程序的三种方法     1.直接放到Webapps目录下      Tomcat的Webapps目录是Tomcat默认的应用目录,当服务器启动时,会加载所有这个目录下的应 ...

  4. Visual Studio 2017 系统发布部署服务器教程

    Visual Studio 2017 系统发布部署服务器教程       一.公司网站部署 --- 第一档 _Visual Studio 2017 发布网站系统教程  二.公司网站部署 --- 第二档 ...

  5. GeoServer基础教程(三):部署发布Shapefile地图数据

    转载:http://blog.csdn.net/mingzai624. 这是GeoServer官方网站提供的一份Shapefile测试数据 nyc_roads.zip ,包含了部分纽约的道路信息,我们 ...

  6. Idea+maven+tomcat部署第一个tomcat项目

    IDEA创建Maven项目及部署发布,IDEA配置Tomcat,创建java源文件夹. 此教程适合刚刚使用IDEA的新手. 工具/原料   IntelliJ IDEA 2016.3.4 apache- ...

  7. springboot项目部署到独立tomcat的爬坑集锦

    目录 集锦一:普通的springboot项目直接部署jar包 集锦二:springboot项目不能直接打war包部署 集锦三:因为tomcat版本问题导致的lombok插件报错:Invalid byt ...

  8. Solr 4.0 部署实例教程

    Solr 4.0 部署实例教程 Solr 4.0的入门基础教程,先说一点部署之后肯定会有人用solrj,solr 4.0好像添加了不少东西,其中CommonsHttpSolrServer这个类改名为H ...

  9. 【转】MyEclipse开发Web项目发布到Tomcat下的Root目录

    通常情况下,Web项目是发布到Tomcat下的webapps文件目录下的 .以至于我们访问的时候: 例如:Web应用项目名称为:webManager,则部署到tomcat后,是部署在tomcat/we ...

随机推荐

  1. Leetcode(871)-最低加油次数

    汽车从起点出发驶向目的地,该目的地位于出发位置东面 target 英里处. 沿途有加油站,每个 station[i] 代表一个加油站,它位于出发位置东面 station[i][0] 英里处,并且有 s ...

  2. P1337 [JSOI2004]平衡点(模拟退火)题解

    题意: 如图:有n个重物,每个重物系在一条足够长的绳子上.每条绳子自上而下穿过桌面上的洞,然后系在一起.图中X处就是公共的绳结.假设绳子是完全弹性的(不会造成能量损失),桌子足够高(因而重物不会垂到地 ...

  3. vue-cli-service & @vue/cli-service

    vue-cli-service & @vue/cli-service https://www.npmjs.com/package/@vue/cli-service https://yarnpk ...

  4. Fetch & POST

    Fetch & POST fetch( `http://10.1.5.202/deploy/http/send/viewtree`, { method: "POST", m ...

  5. codesign wants to access key 密码是什么

    codesign wants to access key 密码是什么 真正的是开机密码,不是 apple id 密码 https://developer.apple.com/forums/thread ...

  6. Baccarat如何点燃DEFI市场?

    目前DeFi是成为了各大生态的"兵家必争之地",与此同时DeFi的高收益也成为吸引散户入局的一个利器.而虽然流动性挖矿板块近期的温度有所下降,但是这其中不乏还是有很多收益颇丰的De ...

  7. NGK全球启动大会正式启动,资产上链的前景与机会在哪?

    据彭博社报道,加州时间11月25日,NGK全球启动大会在美国硅谷圆满落幕,本次NGK全球启动大会为NGK全球化进程正式拉开了帷幕. 众多业界人士共襄盛举,共同进行探讨未来公链发展的去向和契机. 当前, ...

  8. elasticsearch如何设计索引

    本文为博客园作者所写: 一寸HUI,个人博客地址:https://www.cnblogs.com/zsql/ 最近在做es相关的工作,所以记录下自己的一些想法,可能很多方面不会很全面,但是基本都是经过 ...

  9. JDK源码阅读-FileDescriptor

    本文转载自JDK源码阅读-FileDescriptor 导语 操作系统使用文件描述符来指代一个打开的文件,对文件的读写操作,都需要文件描述符作为参数.Java虽然在设计上使用了抽象程度更高的流来作为文 ...

  10. 百度webuploader_c#实现文件分片上传思路

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...