Файл точки входа приложения не найден. nativescript

Я создаю проект Angular 2 nativescript и после добавления платформы Android запускаю проект на подключенном Nexus 6p с версией Android 7.1.1 и при развертывании приложения на устройстве я получаю эту ошибку:

An uncaught Exception occurred on "main" thread.
java.lang.RuntimeException: Unable to create application com.tns.NativeScriptApplication: com.tns.NativeScriptException: Application entry point file not found. Please specify the file in package.json otherwise make sure the file index.js or bootstrap.js exists.\nIf using typescript make sure your entry point file is transpiled to javascript.
 at android.app.ActivityThread.handleBindApplication(ActivityThread.java:5406)
 at android.app.ActivityThread.-wrap2(ActivityThread.java)
 at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1545)
 at android.os.Handler.dispatchMessage(Handler.java:102)
 at android.os.Looper.loop(Looper.java:154)
 at android.app.ActivityThread.main(ActivityThread.java:6119)
 at java.lang.reflect.Method.invoke(Native Method)
 at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:886)
 at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:776)
Caused by: com.tns.NativeScriptException: Application entry point file not found. Please specify the file in package.json otherwise make sure the file index.js or bootstrap.js exists.\nIf using typescript make sure your entry point file is transpiled to javascript.
 at com.tns.Module.bootstrapApp(Module.java:337)
 at com.tns.Runtime.run(Runtime.java:508)
 at com.tns.NativeScriptApplication.onCreate(NativeScriptApplication.java:17)
 at android.app.Instrumentation.callApplicationOnCreate(Instrumentation.java:1024)
 at android.app.ActivityThread.handleBindApplication(ActivityThread.java:5403)
 ... 8 more
Caused by: com.tns.NativeScriptException: Failed to find module: "./", relative to: app//
 at com.tns.Module.resolvePathHelper(Module.java:159)
 at com.tns.Module.bootstrapApp(Module.java:335)
 ... 12 more

Любая идея, как я могу решить эту ошибку?

Обновить:

я создаю проект с tns create name --ng и я просто запускаю его с tns run android команда. package.js файл:

{
    "description": "NativeScript Application",
    "license": "SEE LICENSE IN <your-license-filename>",
    "readme": "NativeScript Application",
    "repository": "<fill-your-repository-here>",
    "nativescript": {
        "id": "org.nativescript.Bazim",
        "tns-android": {
            "version": "2.4.1"
        }
    },
    "dependencies": {
        "@angular/common": "2.2.1",
        "@angular/compiler": "2.2.1",
        "@angular/core": "2.2.1",
        "@angular/forms": "2.2.1",
        "@angular/http": "2.2.1",
        "@angular/platform-browser": "2.2.1",
        "@angular/platform-browser-dynamic": "2.2.1",
        "@angular/router": "3.2.1",
        "nativescript-angular": "1.2.0",
        "nativescript-theme-core": "^0.2.1",
        "reflect-metadata": "~0.1.8",
        "rxjs": "5.0.0-beta.12",
        "tns-core-modules": "2.4.3",
        "typescript": "~2.0.10",

    },
    "devDependencies": {
        "babel-traverse": "6.21.0",
        "babel-types": "6.21.0",
        "babylon": "6.14.1",
        "lazy": "1.0.11",
        "nativescript-dev-android-snapshot": "^0.*.*",
        "nativescript-dev-typescript": "^0.3.2",
        "typescript": "~2.0.10",
        "zone.js": "~0.6.21"
    }
}

2 ответа

Решение

Проблема была с версией узла, я обновил узел, и проблема решена!

package.json файл, который вы разместили, неправильный.

Там должен быть еще один внутри app папка. Это должно выглядеть примерно так:

{
  "name": "name",
  "main": "app.js", //THIS IT THE ENTRYPOINT
  "version": "X.X.X",
  "author": {
    "name": "Name",
    "email": "some@email.com"
  },
  "description": "some desc!",
  "repository": {
    "url": "https://github.com/yourrepo"
  }
}

Убедитесь, что файл точки входа существует (он должен быть .js файл, а не файл машинописного текста), и вы должны быть в порядке.

Точка входа определяется в angular.json

"architect": {
        "build": {
          "builder": "@angular-devkit/build-angular:browser",
          "options": {
            "outputPath": "dist/output",
            "index": "src/index.html",
            "main": "src/main.ts",

но такая ошибка может произойти, если у нас есть какие-либо ошибки компиляции, у меня это было с тестами и вложенным приложением, я исключил это в tsconfig, и теперь это работает

В моем случае это было связано с моей версией CLI NativeScript. Обновил версию и проблема решена. Просто для справки я был на angular-cli 7.3.6 и NativeScript-cli 5.4.0 (получил проблему) обновлен до NativeScript-cli 5.4.2, чтобы решить проблему. Если вы столкнулись с подобной проблемой, попробуйте обновить версию интерфейса командной строки NativeScript.

Другие вопросы по тегам