无法检测正在使用的Web框架,请检查firebase-debug.log以获取更多信息

问题描述 投票:0回答:1

我在使用

firebase deploy
命令将 Angular 应用程序部署到 Firebase 托管时遇到错误。我收到的具体错误消息是:

[2024-01-31T22:26:15.400Z] ----------------------------------------------------------------------
[debug] [2024-01-31T22:26:15.406Z] Command:       C:\Program Files\nodejs\node.exe C:\Users\Shushant\AppData\Roaming\npm\node_modules\firebase-tools\lib\bin\firebase.js deploy --only hosting --debug --force
[debug] [2024-01-31T22:26:15.407Z] CLI Version:   13.1.0
[debug] [2024-01-31T22:26:15.407Z] Platform:      win32
[debug] [2024-01-31T22:26:15.407Z] Node Version:  v20.11.0
[debug] [2024-01-31T22:26:15.408Z] Time:          Thu Feb 01 2024 03:56:15 GMT+0530 (India Standard Time)
[debug] [2024-01-31T22:26:15.408Z] ----------------------------------------------------------------------
[debug] 
[debug] [2024-01-31T22:26:15.551Z] > command requires scopes: ["email","openid","https://www.googleapis.com/auth/cloudplatformprojects.readonly","https://www.googleapis.com/auth/firebase","https://www.googleapis.com/auth/cloud-platform"]
[debug] [2024-01-31T22:26:15.555Z] > authorizing via signed-in user ([email protected])
[debug] [2024-01-31T22:26:15.556Z] [iam] checking project ai-capablitiles for permissions ["firebase.projects.get","firebasehosting.sites.update"]
[debug] [2024-01-31T22:26:15.561Z] >>> [apiv2][query] POST https://cloudresourcemanager.googleapis.com/v1/projects/ai-capablitiles:testIamPermissions [none]
[debug] [2024-01-31T22:26:15.563Z] >>> [apiv2][(partial)header] POST https://cloudresourcemanager.googleapis.com/v1/projects/ai-capablitiles:testIamPermissions x-goog-quota-user=projects/ai-capablitiles
[debug] [2024-01-31T22:26:15.564Z] >>> [apiv2][body] POST https://cloudresourcemanager.googleapis.com/v1/projects/ai-capablitiles:testIamPermissions {"permissions":["firebase.projects.get","firebasehosting.sites.update"]}
[debug] [2024-01-31T22:26:18.071Z] <<< [apiv2][status] POST https://cloudresourcemanager.googleapis.com/v1/projects/ai-capablitiles:testIamPermissions 200
[debug] [2024-01-31T22:26:18.074Z] <<< [apiv2][body] POST https://cloudresourcemanager.googleapis.com/v1/projects/ai-capablitiles:testIamPermissions {"permissions":["firebase.projects.get","firebasehosting.sites.update"]}
[debug] [2024-01-31T22:26:18.081Z] >>> [apiv2][query] GET https://firebase.googleapis.com/v1beta1/projects/ai-capablitiles [none]
[debug] [2024-01-31T22:26:18.867Z] <<< [apiv2][status] GET https://firebase.googleapis.com/v1beta1/projects/ai-capablitiles 200
[debug] [2024-01-31T22:26:18.869Z] <<< [apiv2][body] GET https://firebase.googleapis.com/v1beta1/projects/ai-capablitiles {"projectId":"ai-capablitiles","projectNumber":"1087444811031","displayName":"AI-Capablitiles","name":"projects/ai-capablitiles","resources":{"hostingSite":"ai-capablitiles"},"state":"ACTIVE","etag":"1_7181a315-ce6c-467a-8507-cf0a8cde8cb5"}
[debug] [2024-01-31T22:26:28.108Z] >>> [apiv2][query] GET https://firebasehosting.googleapis.com/v1beta1/projects/ai-capablitiles/sites pageToken=&pageSize=10
[debug] [2024-01-31T22:26:29.559Z] <<< [apiv2][status] GET https://firebasehosting.googleapis.com/v1beta1/projects/ai-capablitiles/sites 200
[debug] [2024-01-31T22:26:29.562Z] <<< [apiv2][body] GET https://firebasehosting.googleapis.com/v1beta1/projects/ai-capablitiles/sites {"sites":[{"name":"projects/ai-capablitiles/sites/ai-capablitiles","defaultUrl":"https://ai-capablitiles.web.app","appId":"1:1087444811031:web:581a70c497b61fc9120b52","type":"DEFAULT_SITE"}]}
[error] 
[error] Error: Unable to detect the web framework in use, check firebase-debug.log for more info.

Documentation: https://firebase.google.com/docs/hosting/frameworks/frameworks-overview
File a bug: https://github.com/firebase/firebase-tools/issues/new?template=bug_report.md
Submit a feature request: https://github.com/firebase/firebase-tools/issues/new?template=feature_request.md

We'd love to learn from you. Express your interest in helping us shape the future of Firebase Hosting: https://goo.gle/41enW5X

重现步骤:

  1. 遵循 YouTube 教程:https://youtu.be/_9rCf353j3U?si=oNbpo_F9tdoQF7Bc
  2. angular.json
    firebase.json
    文件
  3. 运行
    firebase deploy --only hosting --debug --force
    命令。
  4. 观察到上述错误。

angular.json

{
  "$schema": "./node_modules/@angular/cli/lib/config/schema.json",
  "version": 1,
  "newProjectRoot": "projects",
  "projects": {
    "palm-api-app": {
      "projectType": "application",
      "schematics": {},
      "root": "",
      "sourceRoot": "src",
      "prefix": "app",
      "architect": {
        "build": {
          "builder": "@angular-devkit/build-angular:browser",
          "options": {
            "outputPath": "dist/palm-api-app",
            "index": "src/index.html",
            "main": "src/main.ts",
            "polyfills": [
              "zone.js"
            ],
            "tsConfig": "tsconfig.app.json",
            "assets": [
              "src/favicon.ico",
              "src/assets"
            ],
            "styles": [
              "src/styles.css"
            ],
            "scripts": []
          },
          "configurations": {
            "production": {
              "budgets": [
                {
                  "type": "initial",
                  "maximumWarning": "500kb",
                  "maximumError": "1mb"
                },
                {
                  "type": "anyComponentStyle",
                  "maximumWarning": "2kb",
                  "maximumError": "4kb"
                }
              ],
              "outputHashing": "all"
            },
            "development": {
              "buildOptimizer": false,
              "optimization": false,
              "vendorChunk": true,
              "extractLicenses": false,
              "sourceMap": true,
              "namedChunks": true,
              "fileReplacements": [
                {
                  "replace": "src/environments/environment.ts",
                  "with": "src/environments/environment.development.ts"
                }
              ]
            }
          },
          "defaultConfiguration": "production"
        },
        "serve": {
          "builder": "@angular-devkit/build-angular:dev-server",
          "configurations": {
            "production": {
              "browserTarget": "palm-api-app:build:production"
            },
            "development": {
              "browserTarget": "palm-api-app:build:development"
            }
          },
          "defaultConfiguration": "development"
        },
        "extract-i18n": {
          "builder": "@angular-devkit/build-angular:extract-i18n",
          "options": {
            "browserTarget": "palm-api-app:build"
          }
        },
        "test": {
          "builder": "@angular-devkit/build-angular:karma",
          "options": {
            "polyfills": [
              "zone.js",
              "zone.js/testing"
            ],
            "tsConfig": "tsconfig.spec.json",
            "assets": [
              "src/favicon.ico",
              "src/assets"
            ],
            "styles": [
              "src/styles.css"
            ],
            "scripts": []
          }
        },
        "deploy": {
          "builder": "@angular/fire:deploy",
          "options": {
            "version": 2,
            "browserTarget": "palm-api-app:build:production"
          }
        }
      }
    }
  },
  "cli": {
    "analytics": "bc92bba8-fc99-4e7d-b704-1b072d5ff38a"
  }
}

firbase.json

{
  "hosting": [
    {
      "target": "palm-api-app",
      "source": "dist/palm-api-app",
      "frameworksBackend": {},
      "rewrites": [
        {
          "source": "**",
          "destination": "/index.html"
        }
      ],
      "predeploy": [
        "ng build --prod"
      ]
    }
  ]
}  

预期行为:

我的 Angular 应用程序应该成功部署到 Firebase 托管,没有任何错误。

可能导致此“无法检测 Web 框架”错误的原因是什么,如何解决该错误以成功将我的 Angular 应用程序部署到 Firebase 托管?

angular firebase firebase-hosting firebase-tools
1个回答
0
投票

查看您的

firebase.json
,您似乎指向了错误的目录。这是因为在使用
webframeworks
功能时,您的
source
应指向 Angular 工作区的路径,而不是 Angular 应用程序的已编译代码。

尝试改变:

      "source": "dist/palm-api-app",

      "source": ".",
© www.soinside.com 2019 - 2024. All rights reserved.