-
Notifications
You must be signed in to change notification settings - Fork 313
Source maps are not available in a real Android device using Chrome DevTools #822
Description
Short description of the problem:
I cannot debug TypeScript sources on a real Android device using "ionic_source_map_type": "source-map"
in my packages.json
file. Only using "ionic_source_map_type": "#inline-source-map"
Chrome DevTools finds source maps, but this type of source map is not supported by Ionic Team as explained here in issue #740 and --prod
fails when used to build the release version.
What behavior are you expecting?
Either Chrome DevTools showing source maps in a real Android device using "ionic_source_map_type": "source-map"
, or support "ionic_source_map_type": "#inline-source-map"
in production.
Steps to reproduce:
- Create an empty project with
ionic start --v2 myApp tabs
. - Set
"ionic_source_map_type": "source-map"
as source map type in package.config. See below. - Build with
ionic run android
. - Use Chrome DevTools to access the WebView in the mobile device. Source maps are not available.
My package.config:
{
"name": "JustToday",
"author": "Incubapps",
"homepage": "http://www.justtoday.com",
"private": true,
"scripts": {
"clean": "ionic-app-scripts clean",
"build": "ionic-app-scripts build",
"ionic:build": "ionic-app-scripts build",
"ionic:serve": "ionic-app-scripts serve"
},
"dependencies": {
"@angular/common": "2.4.8",
"@angular/compiler": "2.4.8",
"@angular/compiler-cli": "2.4.8",
"@angular/core": "2.4.8",
"@angular/forms": "2.4.8",
"@angular/http": "2.4.8",
"@angular/platform-browser": "2.4.8",
"@angular/platform-browser-dynamic": "2.4.8",
"@angular/platform-server": "2.4.8",
"@ionic/storage": "2.0.0",
"@ngx-translate/core": "6.0.0",
"@ngx-translate/http-loader": "0.0.3",
"@types/cordova": "0.0.34",
"@types/cordova-plugin-device": "0.0.3",
"@types/cordova-plugin-file": "0.0.3",
"@types/cordova-plugin-file-transfer": "0.0.3",
"@types/cordova-plugin-inappbrowser": "0.0.4",
"@types/cordova-plugin-splashscreen": "0.0.3",
"@types/cordova-plugin-statusbar": "0.0.3",
"@types/cordova-sqlite-storage": "^1.5.1",
"@types/cordova.plugins.diagnostic": "^3.4.0",
"@types/phonegap-plugin-push": "0.0.31",
"ionic-angular": "2.2.0",
"ionic-native": "2.8.1",
"ionicons": "3.0.0",
"rxjs": "5.0.1",
"sw-toolbox": "3.6.0",
"zone.js": "0.7.2"
},
"devDependencies": {
"@ionic/app-scripts": "1.1.4",
"typescript": "2.1.6"
},
"config": {
"ionic_bundler": "webpack",
"ionic_source_map_type": "source-map"
},
"cordovaPlugins": [
"cordova-plugin-device",
"cordova-plugin-console",
"cordova-plugin-whitelist",
"cordova-plugin-splashscreen",
"cordova-plugin-statusbar",
"ionic-plugin-keyboard",
"cordova-plugin-inappbrowser",
"cordova-sqlite-storage",
"cordova-plugin-file",
"cordova-plugin-compat",
{
"variables": {
"SENDER_ID": "XXXX"
},
"locator": "https://github.com/phonegap/phonegap-plugin-push",
"id": "phonegap-plugin-push"
},
"cordova-plugin-x-toast",
"cordova-plugin-file-transfer",
"cordova-plugin-zip",
"cordova.plugins.diagnostic",
"cordova-plugin-geolocation",
{
"variables": {
"BRANCH_KEY": "key_live_XXXX",
"URI_SCHEME": "XXXX"
},
"locator": "https://github.com/BranchMetrics/cordova-ionic-phonegap-branch-deep-linking",
"id": "branch-cordova-sdk"
},
"cordova-plugin-screen-orientation"
],
"cordovaPlatforms": [
"android",
"browser",
"ios",
{
"platform": "ios",
"version": "",
"locator": "ios"
}
]
}
Which @ionic/app-scripts version are you using?
ionic-app-scripts 1.1.4
Other information: (e.g. stacktraces, related issues, suggestions how to fix, stackoverflow links, forum links, etc)
When using "ionic_source_map_type": "#inline-source-map"
in packages.json
, I can debug TypeScript in DevTools, but using --prod
makes the compilation fail:
xavi@Xaviers-iMac:/Volumes/Data/xavi/work/code/ionic/incubapps/just-today-ionic$ ionic run android --prod
> JustToday@ ionic:build /Volumes/Data/xavi/work/code/ionic/incubapps/just-today-ionic
> ionic-app-scripts build "--prod"
[14:18:54] ionic-app-scripts 1.1.4
[14:18:54] build prod started ...
[14:18:54] clean started ...
[14:18:54] clean finished in 4 ms
[14:18:54] copy started ...
[14:18:54] ngc started ...
[14:19:09] ngc finished in 15.29 s
[14:19:09] preprocess started ...
[14:19:09] optimization started ...
[14:19:14] copy finished in 19.97 s
[14:19:18] optimization finished in 9.11 s
[14:19:18] preprocess finished in 9.11 s
[14:19:18] webpack started ...
[14:19:46] webpack finished in 27.43 s
[14:19:46] sass started ...
[14:19:46] transpile bundle started ...
[14:20:01] transpile bundle finished in 15.49 s
[14:20:01] uglifyjs started ...
[14:20:02] sass finished in 16.28 s
[14:20:02] cleancss started ...
[14:20:03] cleancss finished in 1.29 s
[14:20:15] uglifyjs failed: ENOENT: no such file or directory, open
'/Volumes/Data/xavi/work/code/ionic/incubapps/just-today-ionic/www/build/main.js.map'
[14:20:15] ionic-app-script task: "build"
[14:20:15] Error: ENOENT: no such file or directory, open
'/Volumes/Data/xavi/work/code/ionic/incubapps/just-today-ionic/www/build/main.js.map'
Error: ENOENT: no such file or directory, open '/Volumes/Data/xavi/work/code/ionic/incubapps/just-today-ionic/www/build/main.js.map'
at Error (native)
at Object.fs.openSync (fs.js:640:18)
at Object.fs.readFileSync (fs.js:508:33)
at Object.exports.minify (/Volumes/Data/xavi/work/code/ionic/incubapps/just-today-ionic/node_modules/uglify-js/tools/node.js:120:31)
at runUglifyInternal (/Volumes/Data/xavi/work/code/ionic/incubapps/just-today-ionic/node_modules/@ionic/app-scripts/dist/uglifyjs.js:47:19)
at /Volumes/Data/xavi/work/code/ionic/incubapps/just-today-ionic/node_modules/@ionic/app-scripts/dist/uglifyjs.js:31:32
at uglifyjsWorker (/Volumes/Data/xavi/work/code/ionic/incubapps/just-today-ionic/node_modules/@ionic/app-scripts/dist/uglifyjs.js:22:12)
at process.<anonymous> (/Volumes/Data/xavi/work/code/ionic/incubapps/just-today-ionic/node_modules/@ionic/app-scripts/dist/worker-process.js:8:9)
at emitTwo (events.js:106:13)
at process.emit (events.js:191:7)
npm ERR! Darwin 15.6.0
npm ERR! argv "/usr/local/bin/node" "/usr/local/bin/npm" "run" "ionic:build" "--" "--prod"
npm ERR! node v6.9.5
npm ERR! npm v3.10.10
npm ERR! code ELIFECYCLE
npm ERR! JustToday@ ionic:build: `ionic-app-scripts build "--prod"`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the JustToday@ ionic:build script 'ionic-app-scripts build "--prod"'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the JustToday package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR! ionic-app-scripts build "--prod"
npm ERR! You can get information on how to open an issue for this project with:
npm ERR! npm bugs JustToday
npm ERR! Or if that isn't available, you can get their info via:
npm ERR! npm owner ls JustToday
npm ERR! There is likely additional logging output above.
npm ERR! Please include the following file with any support request:
npm ERR! /Volumes/Data/xavi/work/code/ionic/incubapps/just-today-ionic/npm-debug.log