Centos7 搭建App Inventor 2 2018.12.5更新

本博客转载自:https://gte.fsyz.net/node/1874
1.CentOS7最小安装,设定网络,root登陆。 复制命令运行出错,可能是空格被替换为 了。

2.升级系统最新:

 yum -y update

3.必要软件安装:

 yum -y install wget zip unzip git  vim  zlib.i686  libstdc++-4.8.5-28.el7.i686  libstdc++-4.8.5-28.el7_5.1.i686 
 yum provides libstdc++.so.6

已加载插件:fastestmirror
Loading mirror speeds from cached hostfile

yum -y install libstdc++-4.8.5-28.el7.i686
//确保有libstdc++.so.6库文件
  1. 下载与安装jdk8:【20181201】
cd /opt 
wget --no-check-certificate --no-cookies --header "Cookie: oraclelicense=accept-securebackup-cookie" https://download.oracle.com/otn-pub/java/jdk/8u191-b12/2787e4a523244c269598db4e85c51e0c/jdk-8u191-linux-x64.tar.gz
tar -zxvf jdk-8u191-linux-x64.tar.gz
ln -s /opt/jdk1.8.0_191 /opt/java

//若有安装openjdk ,记得先卸载。rpm -qa | grep openjdk  ;yum -y remove 
//以后jdk升级到opt/jdk1.8.0_192 就  ln -snf /opt/jdk1.8.0_192 /opt/java

5.ant安装 http://ant.apache.org/bindownload.cgi

cd /opt
wget http://mirrors.hust.edu.cn/apache//ant/binaries/apache-ant-1.10.5-bin.zip
unzip apache-ant-1.10.5-bin.zip
ln -s /opt/apache-ant-1.10.5 /opt/apache-ant

//下次升级了apache-ant-1.10.6 就 ln -snf /opt/apache-ant-1.10.6 /opt/apache-ant

6.https://cloud.google.com/appengine/docs/standard/java/download 下载最新版本 App Engine SDK for Java

cd /opt
wget https://storage.googleapis.com/appengine-sdks/featured/appengine-java-sdk-1.9.69.zip
unzip appengine-java-sdk-1.9.69.zip
ln -s /opt/appengine-java-sdk-1.9.69 /opt/appengine-java-sdk

7.设置环境

 vim /etc/profile

末尾加入

export ANT_HOME=/opt/apache-ant
export JAVA_HOME=/opt/java
export JRE_HOME=/opt/java/jre
export PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin:$ANT_HOME/bin:/opt/appengine-java-sdk/bin
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
 source /etc/profile

测试下:

java -version

java version "1.7.0_80"
Java(TM) SE Runtime Environment (build 1.7.0_80-b15)
Java HotSpot(TM) 64-Bit Server VM (build 24.80-b11, mixed mode)


ant -version
Apache Ant(TM) version 1.9.9 compiled on February 2 2017

9.使用git或者从https://github.com/mit-cml/appinventor-sources/archive/master.zip下载源码。

cd /opt
git clone https://github.com/mit-cml/appinventor-sources.git
cd appinventor-sources
cp sample-.gitignore .gitignore
git submodule update --init

10.ant appinventor代码

cd /opt/appinventor-sources/appinventor
ant clean
ant MakeAuthKey
ant

11.防火墙设置

   firewall-cmd --permanent --zone=public --add-port=8888/tcp
   firewall-cmd --reload

12.试运行

 dev_appserver.sh --port=8888 --address=0.0.0.0  --disable_update_check /opt/appinventor-sources/appinventor/appengine/build/war/

看看有没有出错代码,Ctrl+c 退出。

13.搬到正式运行目录

cd /opt
mkdir ai2server
cd ai2server
cp -R /opt/appinventor-sources/appinventor/appengine/build/war ./
cp -R /opt/appinventor-sources/appinventor/buildserver/build/run/lib ./

14.开机启动

vim /opt/ai2server/runai2.sh
写入:

#!/usr/bin/bash
#
#
#

export ANT_HOME=/opt/apache-ant
export JAVA_HOME=/opt/java
export JRE_HOME=/opt/java/jre
export PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin:$ANT_HOME/bin:/opt/appengine-java-sdk/bin
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib

#pkill -9 java

nohup dev_appserver.sh --port=8888 --address=0.0.0.0  --disable_update_check /opt/ai2server/war/ &> /var/log/ai2d.log &
echo $! > /var/run/ai2d.pid

cd /opt/ai2server/lib
nohup java -Xmx1828m -cp "*" -Dfile.encoding=UTF-8 com.google.appinventor.buildserver.BuildServer --dexCacheDir /tmp/ &> /var/log/ai2b.log &
echo $! > /var/run/ai2b.pid

chmod +x /opt/ai2server/runai2.sh
vim  /opt/ai2server/stopai2.sh

  写入:

#!/usr/bin/bash
#
#

#pkill -9 java

read PID < /var/run/ai2d.pid

kill -15 $PID

read PID < /var/run/ai2b.pid

kill -15 $PID
chmod +x /opt/ai2server/stopai2.sh

创建service

cd /usr/lib/systemd/system
vim ai2.service
[Unit]
Description=app inventor 2
After=network.target
 
[Service]
Type=forking
ExecStart=/opt/ai2server/runai2.sh
ExecStop=/opt/ai2server/stopai2.sh
PrivateTmp=true
 
[Install]
WantedBy=multi-user.target
systemctl start ai2.service       #(等1分钟后,网站能访问了吧)
systemctl enable ai2.service   #  (开机启动)

15.appinventor-sources更新

cd /opt/appinventor-sources
git pull
git submodule update
cd /opt/appinventor-sources/appinventor   
ant clean  
ant
/opt/ai2server/stopai2.sh

sleep 10s

\cp -Rf /opt/appinventor-sources/appinventor/appengine/build/war /opt/ai2server/
\cp -Rf /opt/appinventor-sources/appinventor/buildserver/build/run/lib /opt/ai2server/

/opt/ai2server/runai2.sh

16.拓展

修改web.xml 禁止访问/_ah/admin https://gte.fsyz.net/node/1900

三、离线服务器增强
https://gte.fsyz.net/node/1911

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值