Flutter 打包部署到 Linux Tomcat

进入flutter项目的终端输入命令:

flutter build web

在 build文件夹下生成 web 文件夹,注意,这里有坑,我是后来才发现,

用 “flutter build web” 生成的web文件,在部署之后,运行的过程中可能会有一些问题,比如ImagePicker不起作用,于是我用另一种方法生成 web文件,

flutter run -d chrome --release

上面这行命令,以release模式在浏览器上运行,也生成web文件,我对比这两种方法生成的web里的 main.dart.js,发现两者不一样,

这或许是前者运行时会有一些bug的原因吧,总之往后我都用flutter run -d chrome --release的方式生成web文件。

修改 web 里的 index.html  文件,修改其中的<base>标签,修改如下:

<base href="http://192.168.1.102:9091/flutterapp01/">

192.168.1.102 是Linux的IP地址,9091 是tomcat监听的端口(稍后配置),

待会儿测试的时候会在浏览器输入:http://192.168.1.102:9091/flutterapp01

将 web文件夹上传到 Linux的 /root/flutter-apps下,改名为testapp01(根据自己喜好传到Linux的不同目录,改不同的名),此时在Linux上有 /root/flutter-apps/testapp01

配置 tomcat

进入Linux的 root/tomcat-flutter/conf 目录(我的tomcat放在 root/tomcat-flutter)

cd /root/tomcat-flutter/conf/

修改server.xml文件

vi server.xml

修改 <Server>的port,这个tomcat专门为flutter项目服务的,于是我把Server port改为9006,防止和其它tomcat冲突(如果Linux上还有其他tomcat的话)

接着修改 <Connector>的port,我要tomcat监听9091

接着在<Engine>下,添加一个<Host>,192.168.1.102 是Linux的IP地址

<Host name="192.168.1.102" appBase="webapps" unpackWARs="true" autoDeploy="true">
          <Context path="/flutterapp01" docBase="/root/flutter-apps/testapp01" />
</Host>

进入 root/tomcat-flutter/bin 目录

cd /root/tomcat-flutter/bin

启动tomcat

./startup.sh

在浏览器输入:http://192.168.1.102:9091/flutterapp01

  • 9
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值