在构建流星应用程序后,Meteor无法运行

Boa*_*och 3 build cordova meteor

好的,所以我使用该命令构建了一个流星应用程序

meteor build bundle --debug --server https://(my app url hosted on meteor)
Run Code Online (Sandbox Code Playgroud)

meteor确实用cordova android包和tar.gz文件构建了一个bundle文件夹.

在构建应用程序后,即时尝试点击

meteor
Run Code Online (Sandbox Code Playgroud)

但我得到一堆错误:

While Building the application:
bundle/android/project/cordova/lib/android_sdk_version.js:1:15: Unexpected token ILLEGAL
bundle/android/project/cordova/lib/appinfo.js:1:15: Unexpected token ILLEGAL
bundle/android/project/cordova/lib/build.js:1:15: Unexpected token ILLEGAL
bundle/android/project/cordova/lib/check_reqs.js:1:15: Unexpected token ILLEGAL
bundle/android/project/cordova/lib/clean.js:1:15: Unexpected token ILLEGAL
bundle/android/project/cordova/lib/device.js:1:15: Unexpected token ILLEGAL
bundle/android/project/cordova/lib/emulator.js:1:15: Unexpected token ILLEGAL
bundle/android/project/cordova/lib/exec.js:1:15: Unexpected token ILLEGAL
bundle/android/project/cordova/lib/log.js:1:15: Unexpected token ILLEGAL
bundle/android/project/cordova/lib/run.js:1:15: Unexpected token ILLEGAL
bundle/android/project/cordova/lib/spawn.js:1:15: Unexpected token ILLEGAL
bundle/android/project/cordova/node_modules/shelljs/scripts/generate-docs.js:1:15: Unexpected token ILLEGAL
bundle/android/project/cordova/node_modules/shelljs/scripts/run-tests.js:1:15: Unexpected token ILLEGAL
bundle/android/project/assets/www/application/head.html:1: bad formatting in HTML template
bundle/android/project/assets/www/application/index.html:1: Can't set DOCTYPE here.  (Meteor sets <!DOCTYPE html> for you)
Run Code Online (Sandbox Code Playgroud)

在那些js文件中查看我看到产生错误的代码行,即:

#!/usr/bin/env node
Run Code Online (Sandbox Code Playgroud)

注意因为phonegap和cordova输出给我一个错误:" /usr/bin/env: node: No such file or directory"

我尝试使用它来修复它 ln -s /usr/bin/nodejs /usr/bin/node

当然删除捆绑文件夹并点击"meteor",不输出任何错误日志,应用程序运行正常.

我想有一些关于cordova构建的错误......

Boa*_*och 10

据斯拉瓦说:

Meteor会获取项目文件夹中的所有javascript文件,包括嵌套文件夹.通过将捆绑包保存在与项目相同的目录中,您只需复制了大量文件,现在Meteor将把它们作为"新的源文件"进行复制.要避免这种情况,请将捆绑包输出到项目的单独目录或Meteor构建工具忽略的隐藏文件夹(任何以点开头的文件夹名称).

编辑: 看看meteor cordova phonegap集成:

流星科尔多瓦 - PhoneGap的集成

meteor build <bundle path> --server <host>:<port>
Run Code Online (Sandbox Code Playgroud)
  • *文件夹(示例主文件夹)

  • **子文件夹(项目的根目录)(示例myMeteorApp)

所以为了让事情发生,请尝试考虑你的应用程序的根文件夹:

meteor build .bundle --debug --server https://(your app url hosted on meteor) //将生成隐藏的direcotrey及其内部的构建.

造成:

  • *文件夹(示例主文件夹)
  • **子文件夹(项目的根目录)(示例myMeteorApp)
  • ***.捆绑(根应用程序文件夹中的隐藏文件夹)

要么

meteor build ../bundle --debug --server https://(your app url hosted on meteor) //将生成一个带有内置构造的direcotrey.

造成:

  • *文件夹(示例主文件夹)
  • **子文件夹(项目的根目录)(示例myMeteorApp)
  • **bundle(你的主文件夹里面的文件夹)