你在这里

winserver 2012 (& win 10 ) X64 搭建 App Inventor 2 服务器 2018.12.06更新

主标签

建议本机编译,不要跨系统使用.

1.下载安装Java SE Development Kit 8(JDK8)。

        https://www.oracle.com/technetwork/cn/java/javase/downloads/jdk8-downloads-2133151-zhs.html
 2.Apache ANT  http://ant.apache.org/bindownload.cgi,  下载1.10.*   

        http://mirrors.shu.edu.cn/apache//ant/binaries/apache-ant-1.10.5-bin.zip。

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

        https://storage.googleapis.com/appengine-sdks/featured/appengine-java-sdk-1.9.69.zip   可能需要代理。

4.下载Git简版。  https://git-scm.com/download/win

        https://github.com/git-for-windows/git/releases/download/v2.7.3.windows.1/PortableGit-2.7.3-64-bit.7z.exe

5.App Inventor 2 源代码  http://appinventor.mit.edu/appinventor-sources/
         https://github.com/mit-cml/appinventor-sources/archive/master.zip 

  [2017.8.19修改:] 不建议直接下载zip文件,而是建议使用官方的git下载最新代码。

1.先安装java

JRE可以不安装。

2.Git

 

3.其余压缩包解压到E:\ai2sever

 

5.设置系统变量path:

拷贝到记事本里面编辑,然后拷贝回去。将各个目录的bin添加到系统PATH里面。

例如:E:\ai2server\git\bin;E:\ai2server\JDK\bin;E:\ai2server\JDK\JRE\bin;

验证一下路径有没有问题:

6. git & ant编译:

 目路 e:\ai2server 命令行(CMD)下运行:

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

此时App Inventor 2的最新源代码就在 e:\ai2server\appinventor-sources下。

若出现

error: RPC failed; curl 18 transfer closed with outstanding read data remaining

fatal: The remote end hung up unexpectedly

fatal: early EOF

fatal: index-pack failed

试试:https://gte.fsyz.net/node/1895    或者: git clone git://github.com/mit-cml/appinventor-sources.git

e:\ai2server\appinventor-sources\lib\blockly 和 e:\ai2server\appinventor-sources\lib\closure-library 也同步到最新版了。

第一次编译,先ant MakeAuthKey 然后再 ant;

编译中可能有关utf-8的出错,方法:(感谢 Victor Shang) 可搜索下CMD UTF-8的有关资料。

  cd appinventor
  chcp 65001
  set JAVA_TOOL_OPTIONS="-Dfile.encoding=UTF-8"

  ant MakeAuthKey
  ant

 

 

7.把appinventor-sources-master\appinventor\appengine\build\war里面的所有文件复制到Devserver

 把appinventor-sources-master\appinventor\buildserver\build\run里面的lib目录复制到新建的BuildServer目录里面

 把解压好的appengine-java-sdk-1.9.27目录改名为appengine

8.新建rundev.bat

@echo off  
 
echo "Starting App Inventor 2..." 
"E:\ai2server\JRE\bin\java" -cp "E:\ai2server\AppEngine\lib\appengine-tools-api.jar"  com.google.appengine.tools.KickStart  com.google.appengine.tools.development.DevAppServerMain %*  --port=8888 --address=0.0.0.0 E:\ai2server\Devserver

@echo off  
echo "Starting App Inventor 2 DevAppServer..." 
chcp 65001
cd %~dp0
SET JAVA_HOME=%~dp0\jdk
SET JRE_HOME=%~dp0\jdk\jre
SET APPE_HOME=%~dp0\appengine
SET PATH=%PATH%;%JAVA_HOME%\bin;%JRE_HOME%\bin;%APPE_HOME%\bin
SET JAVA_TOOL_OPTIONS="-Dfile.encoding=UTF-8"
 java -cp "%APPE_HOME%\lib\appengine-tools-api.jar"  com.google.appengine.tools.KickStart  com.google.appengine.tools.development.DevAppServerMain %*  --port=8888 --disable_update_check --address=0.0.0.0 Devserver

 

9.新建runbul.bat

@echo off  
echo "Starting App Inventor 2 BuildServer..." 
chcp 65001 
cd %~dp0
SET JAVA_HOME=%~dp0\jdk
SET JRE_HOME=%~dp0jdk\jre
SET BUILD_HOME=%~dp0\BuildServer
SET PATH=%PATH%;%JAVA_HOME%\bin;%JRE_HOME%\bin;
SET JAVA_TOOL_OPTIONS="-Dfile.encoding=UTF-8"
cd "%BUILD_HOME%"
java -cp "*" -Dfile.encoding=UTF-8 com.google.appinventor.buildserver.BuildServer 

之后, appinventor-sources-master和apache-ant-1.9.6就可以删掉了

目录结构:(Python其实没用。)

双击2个bat就可以运行了。

发现端口被占用就在任务管理器中关闭java se程序再运行。

10.版本更新:

cd appinventor-sources
git pull
git submodule update
cd appinventor
chcp 65001
set JAVA_TOOL_OPTIONS="-Dfile.encoding=UTF-8"
ant clean
ant

 

------------------------------------------------------------------------

清除本地修改    git reset --hard
拉代码      git pull