【问题标题】:Error: Metadata version mismatch for module @ionic-native/core/decorators.d.ts错误:模块@ionic-native/core/decorators.d.ts 的元数据版本不匹配
【发布时间】:2019-04-29 18:33:12
【问题描述】:

我可以使用 ionic cordova build ios 构建我的 ionic 项目,但是当我使用 --release --prod 选项构建时,我收到了这个错误:

Error: Metadata version mismatch for module 

node_modules/@ionic-native/core/decorators.d.ts, found version 4, expected 3

我知道这是 @ionic-native 插件版本问题,但我无法修复它。我发现了很多 git 问题或论坛,但没有人和我的版本相同。

这是我的依赖项:

"dependencies": {
    "@angular/common": "^4.4.7",
    "@angular/compiler": "^4.4.7",
    "@angular/compiler-cli": "^4.4.7",
    "@angular/core": "^4.4.7",
    "@angular/forms": "^4.4.7",
    "@angular/http": "^4.4.7",
    "@angular/platform-browser": "^4.4.7",
    "@angular/platform-browser-dynamic": "^4.4.7",
    "@firebase/app": "^0.1.10",
    "@ionic-native/background-mode": "^4.17.0",
    "@ionic-native/camera": "^4.17.0",
    "@ionic-native/core": "^4.17.0",
    "@ionic-native/facebook": "^4.17.0",
    "@ionic-native/file": "^4.17.0",
    "@ionic-native/file-transfer": "^4.17.0",
    "@ionic-native/firebase-analytics": "^4.17.0",
    "@ionic-native/google-maps": "^4.15.1",
    "@ionic-native/google-plus": "^4.17.0",
    "@ionic-native/in-app-browser": "^4.17.0",
    "@ionic-native/in-app-purchase": "^4.17.0",
    "@ionic-native/local-notifications": "^4.17.0",
    "@ionic-native/media": "^4.17.0",
    "@ionic-native/native-audio": "^4.17.0",
    "@ionic-native/social-sharing": "^4.17.0",
    "@ionic-native/splash-screen": "^4.17.0",
    "@ionic-native/status-bar": "^4.17.0",
    "@ionic-native/vibration": "^4.17.0",
    "@ionic/storage": "^2.0.1",
    "@ngx-translate/core": "6.0.1",
    "@ngx-translate/http-loader": "0.0.3",
    "@types/stripe": "^3.0.0",
    "ajv": "^5.5.2",
    "angular-svg-round-progressbar": "1.1.1",
    "angular2-swiper": "^0.8.1",
    "angularfire2": "^5.1.0",
    "cordova-android": "^6.2.3",
    "cordova-android-support-gradle-release": "^1.2.0",
    "cordova-browser": "^4.1.0",
    "cordova-ios": "^4.5.5",
    "cordova-plugin-app-event": "^1.2.1",
    "cordova-plugin-background-mode": "^0.7.2",
    "cordova-plugin-compat": "^1.2.0",
    "cordova-plugin-console": "^1.1.0",
    "cordova-plugin-device": "^1.1.7",
    "cordova-plugin-facebook4": "^1.9.1",
    "cordova-plugin-file": "^6.0.1",
    "cordova-plugin-file-transfer": "^1.7.1",
    "cordova-plugin-firebase-analytics": "^0.14.0",
    "cordova-plugin-googleplus": "^5.3.2",
    "cordova-plugin-inappbrowser": "^1.7.2",
    "cordova-plugin-inapppurchase": "^1.2.0",
    "cordova-plugin-local-notification": "^0.9.0-beta.2",
    "cordova-plugin-media": "^5.0.2",
    "cordova-plugin-nativeaudio": "^3.0.9",
    "cordova-plugin-splashscreen": "^5.0.2",
    "cordova-plugin-statusbar": "^2.4.1",
    "cordova-plugin-vibration": "^2.1.6",
    "cordova-plugin-whitelist": "^1.3.3",
    "cordova-plugin-x-socialsharing": "^5.4.3",
    "cordova-support-android-plugin": "^0.3.7",
    "cordova-support-google-services": "^1.2.1",
    "de.appplant.cordova.plugin.local-notification": "^0.8.5",
    "dropbox": "^2.5.7",
    "es6-promise": "^4.2.5",
    "es6-promise-plugin": "^4.1.0",
    "firebase": "^4.3.0",
    "ionic-angular": "3.9.2",
    "ionic-image-loader": "^4.1.1",
    "ionic-plugin-keyboard": "^2.2.1",
    "ionic3-calendar": "git+https://github.com/ReaperSoon/ionic3-calendar.git",
    "ionicons": "4.4.8",
    "jquery": "^3.2.1",
    "localforage": "^1.7.3",
    "localforage-cordovasqlitedriver": "^1.6.0",
    "ng-imgcache": "^1.0.1",
    "ng2-simple-timer": "^1.3.5",
    "promise-polyfill": "6.0.2",
    "rxjs": "5.4.3",
    "setimmediate": "^1.0.5",
    "stripe": "^4.25.0",
    "superagent": "^3.7.0",
    "sw-toolbox": "3.6.0",
    "ts-md5": "^1.2.4",
    "zone.js": "0.8.18"
},
"devDependencies": {
    "@ionic/app-scripts": "3.2.1",
    "@ionic/lab": "1.0.9",
    "in-app-purchase": "^1.10.6",
    "typescript": "2.4.0"
},

谁能帮我找出我的依赖版本有什么问题?

提前致谢

【问题讨论】:

  • 同样的问题...你解决了吗?
  • @victor 嗨,我解决了,但我不记得是怎么解决的...我尝试了很多版本,直到它工作正常,再也没有更改过版本^^
  • @victor,尝试将您的依赖版本与我的进行比较:pastebin.com/Mx186ihS 希望对您有所帮助;)

标签: node.js angular cordova ionic-framework ionic-native


【解决方案1】:

尝试将所有插件从 ionic 更新到最新 https://www.npmjs.com/package/cordova-check-plugins

全局安装:

$ npm install -g cordova-check-plugins

然后从 Cordova 项目的根目录运行。您可以选择以交互方式或自动方式更新过时的插件,例如

$ cordova-check-plugins --update=auto

【讨论】:

  • 谢谢,我试过了,但更新后不行:/我有这个pastebin.com/aUfKzWQ5
  • 删除并再次安装这两个插件
【解决方案2】:

您的 @ionic-native/core 版本的 ^4.17 需要 Angular 5,但您已经列出了 Angular 4 (^4.4.7) 的依赖项。

您可以升级到"ionic-angular": "3.9.8""@angular/core": "5.2.11"

记得将其他 Angular 依赖项也更新为相同版本(@angular/common、@angular/compiler 等)

注意:其他一些依赖 Angular v4 的依赖项可能也需要升级。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-05-05
    • 2019-04-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-09-16
    相关资源
    最近更新 更多