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

时间:2014-10-23 08:43:52

标签: cordova build meteor

好的,所以我使用命令

构建了一个流星应用程序
meteor build bundle --debug --server https://(my app url hosted on meteor)

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

构建应用后,我试图点击

meteor

但我收到了一堆错误:

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)

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

#!/usr/bin/env node

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

我尝试使用ln -s /usr/bin/nodejs /usr/bin/node

修复它

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

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

1 个答案:

答案 0 :(得分:10)

据Slava说:

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

修改 看看meteor cordova phonegap整合:

meteor-cordova-phonegap-integration

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

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

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

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

结果:

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

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

结果:

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