{ "id": "163711", "key": "TIMOB-23980", "fields": { "issuetype": { "id": "1", "description": "A problem which impairs or prevents the functions of the product.", "name": "Bug", "subtask": false }, "project": { "id": "10153", "key": "TIMOB", "name": "Titanium SDK/CLI", "projectCategory": { "id": "10100", "description": "Titanium and related SDKs used in application development", "name": "Client" } }, "fixVersions": [], "resolution": { "id": "3", "description": "The problem is a duplicate of an existing issue.", "name": "Duplicate" }, "resolutiondate": "2017-07-03T13:59:16.000+0000", "created": "2016-10-04T10:31:33.000+0000", "priority": { "name": "Critical", "id": "1" }, "labels": [ "qe-6.0.0" ], "versions": [ { "id": "16980", "description": "New V8", "name": "Release 6.0.0", "archived": false, "released": true, "releaseDate": "2016-11-15" }, { "id": "18322", "name": "Release 5.5.1", "archived": false, "released": true, "releaseDate": "2016-09-28" } ], "issuelinks": [ { "id": "52973", "type": { "id": "10001", "name": "Cloners", "inward": "is cloned into", "outward": "is cloned from" }, "inwardIssue": { "id": "163725", "key": "TIMOB-23982", "fields": { "summary": "CLI: Android module build errors out with spawn ti ENOENT when building without --build-only and ti cli not installed globally", "status": { "description": "The issue is considered finished, the resolution is correct. Issues which are closed can be reopened.", "name": "Closed", "id": "6", "statusCategory": { "id": 3, "key": "done", "colorName": "green", "name": "Done" } }, "priority": { "name": "Critical", "id": "1" }, "issuetype": { "id": "1", "description": "A problem which impairs or prevents the functions of the product.", "name": "Bug", "subtask": false } } } }, { "id": "55329", "type": { "id": "10002", "name": "Duplicate", "inward": "is duplicated by", "outward": "duplicates" }, "outwardIssue": { "id": "168704", "key": "TIMOB-24912", "fields": { "summary": "Android: Running a module after it was built fails on Windows.", "status": { "description": "The issue is considered finished, the resolution is correct. Issues which are closed can be reopened.", "name": "Closed", "id": "6", "statusCategory": { "id": 3, "key": "done", "colorName": "green", "name": "Done" } }, "priority": { "name": "Medium", "id": "3" }, "issuetype": { "id": "1", "description": "A problem which impairs or prevents the functions of the product.", "name": "Bug", "subtask": false } } } } ], "assignee": { "name": "emerriman", "key": "emerriman", "displayName": "Eric Merriman ", "active": true, "timeZone": "America/Los_Angeles" }, "updated": "2017-07-03T13:59:16.000+0000", "status": { "description": "The issue is considered finished, the resolution is correct. Issues which are closed can be reopened.", "name": "Closed", "id": "6", "statusCategory": { "id": 3, "key": "done", "colorName": "green", "name": "Done" } }, "components": [ { "id": "10202", "name": "Android", "description": "Android Platform" }, { "id": "10207", "name": "Tooling" } ], "description": "h5.Description\r\n\r\n*This is not a regression, occurs using 5.5.1.GA components*\r\n\r\nWhen building an Android module without {{--build-only}} the build process errors out with the below. This comes from the CLI attempting to [spawn ti|https://github.com/appcelerator/titanium_mobile/blob/master/android/cli/commands/_buildModule.js#L1487], there is a check if spawning on Windows but it is never triggered as the statement does not return true as {{.bat}} is not present in the command\r\n\r\n* This happens using ti cli and appc cli\r\n* The spawning of ti may lead to issues when running appc cli as a user might not have the titanium cli installed\r\n\r\n{code}\r\n[DEBUG] Staging module project at C:\\Users\\ewan\\AppData\\Local\\Temp\\ti-android-module-build-11694-1752-g5y5p0\r\nError: spawn ti ENOENT\r\n at exports._errnoException (util.js:907:11)\r\n at Process.ChildProcess._handle.onexit (internal/child_process.js:178:32)\r\n at onErrorNT (internal/child_process.js:344:16)\r\n at nextTickCallbackWith2Args (node.js:442:9)\r\n at process._tickCallback (node.js:356:17)\r\n---------------------------------------------\r\n at ChildProcess.spawn (internal/child_process.js:281:13)\r\n at exports.spawn (child_process.js:362:9)\r\n at runTiCommand (C:\\ProgramData\\Titanium\\mobilesdk\\win32\\6.0.0.v20161002235150\\android\\cli\\commands\\_buildModule.js:1453:15)\r\n at AndroidModuleBuilder. (C:\\ProgramData\\Titanium\\mobilesdk\\win32\\6.0.0.v20161002235150\\android\\cli\\commands\\_buildModule.js:1487:4)\r\n at C:\\ProgramData\\Titanium\\mobilesdk\\win32\\6.0.0.v20161002235150\\node_modules\\node-appc\\node_modules\\async\\lib\\async.js:718:13\r\n at iterate (C:\\ProgramData\\Titanium\\mobilesdk\\win32\\6.0.0.v20161002235150\\node_modules\\node-appc\\node_modules\\async\\lib\\async.js:262:13)\r\n at async.forEachOfSeries.async.eachOfSeries (C:\\ProgramData\\Titanium\\mobilesdk\\win32\\6.0.0.v20161002235150\\node_modules\\node-appc\\node_modules\\async\\lib\\async.js:281:9)\r\n at _parallel (C:\\ProgramData\\Titanium\\mobilesdk\\win32\\6.0.0.v20161002235150\\node_modules\\node-appc\\node_modules\\async\\lib\\async.js:717:9)\r\n at Object.async.series (C:\\ProgramData\\Titanium\\mobilesdk\\win32\\6.0.0.v20161002235150\\node_modules\\node-appc\\node_modules\\async\\lib\\async.js:739:9)\r\n---------------------------------------------\r\n at AndroidModuleBuilder.tasks (C:\\ProgramData\\Titanium\\mobilesdk\\win32\\6.0.0.v20161002235150\\android\\cli\\commands\\_buildModule.js:1327:15)\r\n at C:\\ProgramData\\Titanium\\mobilesdk\\win32\\6.0.0.v20161002235150\\node_modules\\node-appc\\node_modules\\async\\lib\\async.js:718:13\r\n at iterate (C:\\ProgramData\\Titanium\\mobilesdk\\win32\\6.0.0.v20161002235150\\node_modules\\node-appc\\node_modules\\async\\lib\\async.js:262:13)\r\n at C:\\ProgramData\\Titanium\\mobilesdk\\win32\\6.0.0.v20161002235150\\node_modules\\node-appc\\node_modules\\async\\lib\\async.js:274:29\r\n at C:\\ProgramData\\Titanium\\mobilesdk\\win32\\6.0.0.v20161002235150\\node_modules\\node-appc\\node_modules\\async\\lib\\async.js:44:16\r\n at Object. (C:\\ProgramData\\Titanium\\mobilesdk\\win32\\6.0.0.v20161002235150\\node_modules\\node-appc\\node_modules\\async\\lib\\async.js:723:17)\r\n at Object. (C:\\ProgramData\\Titanium\\mobilesdk\\win32\\6.0.0.v20161002235150\\node_modules\\node-appc\\node_modules\\async\\lib\\async.js:167:37)\r\n at CLI._fireHookCallback (C:\\Users\\ewan\\AppData\\Roaming\\npm\\node_modules\\titanium\\lib\\hook.js:269:12)\r\n at C:\\Users\\ewan\\AppData\\Roaming\\npm\\node_modules\\titanium\\lib\\hook.js:248:10\r\n---------------------------------------------\r\n at Object.run (C:\\ProgramData\\Titanium\\mobilesdk\\win32\\6.0.0.v20161002235150\\node_modules\\node-appc\\lib\\subprocess.js:59:8)\r\n at AndroidModuleBuilder. (C:\\ProgramData\\Titanium\\mobilesdk\\win32\\6.0.0.v20161002235150\\android\\cli\\commands\\_buildModule.js:1277:22)\r\n at C:\\Users\\ewan\\AppData\\Roaming\\npm\\node_modules\\titanium\\lib\\hook.js:256:13\r\n at C:\\Users\\ewan\\AppData\\Roaming\\npm\\node_modules\\titanium\\node_modules\\async\\lib\\async.js:697:13\r\n at C:\\Users\\ewan\\AppData\\Roaming\\npm\\node_modules\\titanium\\node_modules\\async\\lib\\async.js:52:16\r\n at iterate (C:\\Users\\ewan\\AppData\\Roaming\\npm\\node_modules\\titanium\\node_modules\\async\\lib\\async.js:263:24)\r\n at async.forEachOfSeries.async.eachOfSeries (C:\\Users\\ewan\\AppData\\Roaming\\npm\\node_modules\\titanium\\node_modules\\async\\lib\\async.js:284:9)\r\n at _parallel (C:\\Users\\ewan\\AppData\\Roaming\\npm\\node_modules\\titanium\\node_modules\\async\\lib\\async.js:688:9)\r\n at Object.async.series (C:\\Users\\ewan\\AppData\\Roaming\\npm\\node_modules\\titanium\\node_modules\\async\\lib\\async.js:710:9)\r\n---------------------------------------------\r\n at Object.setImmediate (C:\\ProgramData\\Titanium\\mobilesdk\\win32\\6.0.0.v20161002235150\\node_modules\\node-appc\\node_modules\\async\\lib\\async.js:194:9)\r\n at C:\\ProgramData\\Titanium\\mobilesdk\\win32\\6.0.0.v20161002235150\\node_modules\\node-appc\\node_modules\\async\\lib\\async.js:272:35\r\n at C:\\ProgramData\\Titanium\\mobilesdk\\win32\\6.0.0.v20161002235150\\node_modules\\node-appc\\node_modules\\async\\lib\\async.js:44:16\r\n at C:\\ProgramData\\Titanium\\mobilesdk\\win32\\6.0.0.v20161002235150\\node_modules\\node-appc\\node_modules\\async\\lib\\async.js:723:17\r\n at C:\\ProgramData\\Titanium\\mobilesdk\\win32\\6.0.0.v20161002235150\\node_modules\\node-appc\\node_modules\\async\\lib\\async.js:167:37\r\n at AndroidModuleBuilder.assetFiles (C:\\ProgramData\\Titanium\\mobilesdk\\win32\\6.0.0.v20161002235150\\android\\cli\\commands\\_buildModule.js:1262:4)\r\n at C:\\ProgramData\\Titanium\\mobilesdk\\win32\\6.0.0.v20161002235150\\node_modules\\node-appc\\node_modules\\async\\lib\\async.js:718:13\r\n at iterate (C:\\ProgramData\\Titanium\\mobilesdk\\win32\\6.0.0.v20161002235150\\node_modules\\node-appc\\node_modules\\async\\lib\\async.js:262:13)\r\n at async.forEachOfSeries.async.eachOfSeries (C:\\ProgramData\\Titanium\\mobilesdk\\win32\\6.0.0.v20161002235150\\node_modules\\node-appc\\node_modules\\async\\lib\\async.js:281:9)\r\n---------------------------------------------\r\n at Object.setImmediate (C:\\ProgramData\\Titanium\\mobilesdk\\win32\\6.0.0.v20161002235150\\node_modules\\node-appc\\node_modules\\async\\lib\\async.js:194:9)\r\n at C:\\ProgramData\\Titanium\\mobilesdk\\win32\\6.0.0.v20161002235150\\node_modules\\node-appc\\node_modules\\async\\lib\\async.js:272:35\r\n at C:\\ProgramData\\Titanium\\mobilesdk\\win32\\6.0.0.v20161002235150\\node_modules\\node-appc\\node_modules\\async\\lib\\async.js:44:16\r\n at C:\\ProgramData\\Titanium\\mobilesdk\\win32\\6.0.0.v20161002235150\\node_modules\\node-appc\\node_modules\\async\\lib\\async.js:723:17\r\n at C:\\ProgramData\\Titanium\\mobilesdk\\win32\\6.0.0.v20161002235150\\node_modules\\node-appc\\node_modules\\async\\lib\\async.js:167:37\r\n at AndroidModuleBuilder.verifyBuildArch (C:\\ProgramData\\Titanium\\mobilesdk\\win32\\6.0.0.v20161002235150\\android\\cli\\commands\\_buildModule.js:1235:2)\r\n at C:\\ProgramData\\Titanium\\mobilesdk\\win32\\6.0.0.v20161002235150\\node_modules\\node-appc\\node_modules\\async\\lib\\async.js:718:13\r\n at iterate (C:\\ProgramData\\Titanium\\mobilesdk\\win32\\6.0.0.v20161002235150\\node_modules\\node-appc\\node_modules\\async\\lib\\async.js:262:13)\r\n at C:\\ProgramData\\Titanium\\mobilesdk\\win32\\6.0.0.v20161002235150\\node_modules\\node-appc\\node_modules\\async\\lib\\async.js:274:29\r\n---------------------------------------------\r\n at Object.run (C:\\ProgramData\\Titanium\\mobilesdk\\win32\\6.0.0.v20161002235150\\node_modules\\node-appc\\lib\\subprocess.js:59:8)\r\n at AndroidModuleBuilder. (C:\\ProgramData\\Titanium\\mobilesdk\\win32\\6.0.0.v20161002235150\\android\\cli\\commands\\_buildModule.js:1176:19)\r\n at C:\\Users\\ewan\\AppData\\Roaming\\npm\\node_modules\\titanium\\lib\\hook.js:256:13\r\n at C:\\Users\\ewan\\AppData\\Roaming\\npm\\node_modules\\titanium\\node_modules\\async\\lib\\async.js:697:13\r\n at C:\\Users\\ewan\\AppData\\Roaming\\npm\\node_modules\\titanium\\node_modules\\async\\lib\\async.js:52:16\r\n at iterate (C:\\Users\\ewan\\AppData\\Roaming\\npm\\node_modules\\titanium\\node_modules\\async\\lib\\async.js:263:24)\r\n at async.forEachOfSeries.async.eachOfSeries (C:\\Users\\ewan\\AppData\\Roaming\\npm\\node_modules\\titanium\\node_modules\\async\\lib\\async.js:284:9)\r\n at _parallel (C:\\Users\\ewan\\AppData\\Roaming\\npm\\node_modules\\titanium\\node_modules\\async\\lib\\async.js:688:9)\r\n at Object.async.series (C:\\Users\\ewan\\AppData\\Roaming\\npm\\node_modules\\titanium\\node_modules\\async\\lib\\async.js:710:9)\r\n---------------------------------------------\r\n at Object.setImmediate (C:\\ProgramData\\Titanium\\mobilesdk\\win32\\6.0.0.v20161002235150\\node_modules\\node-appc\\node_modules\\async\\lib\\async.js:194:9)\r\n at C:\\ProgramData\\Titanium\\mobilesdk\\win32\\6.0.0.v20161002235150\\node_modules\\node-appc\\node_modules\\async\\lib\\async.js:272:35\r\n at C:\\ProgramData\\Titanium\\mobilesdk\\win32\\6.0.0.v20161002235150\\node_modules\\node-appc\\node_modules\\async\\lib\\async.js:44:16\r\n at C:\\ProgramData\\Titanium\\mobilesdk\\win32\\6.0.0.v20161002235150\\node_modules\\node-appc\\node_modules\\async\\lib\\async.js:723:17\r\n at C:\\ProgramData\\Titanium\\mobilesdk\\win32\\6.0.0.v20161002235150\\node_modules\\node-appc\\node_modules\\async\\lib\\async.js:167:37\r\n at AndroidModuleBuilder.ndkLocalBuild (C:\\ProgramData\\Titanium\\mobilesdk\\win32\\6.0.0.v20161002235150\\android\\cli\\commands\\_buildModule.js:1103:10)\r\n at C:\\ProgramData\\Titanium\\mobilesdk\\win32\\6.0.0.v20161002235150\\node_modules\\node-appc\\node_modules\\async\\lib\\async.js:718:13\r\n at iterate (C:\\ProgramData\\Titanium\\mobilesdk\\win32\\6.0.0.v20161002235150\\node_modules\\node-appc\\node_modules\\async\\lib\\async.js:262:13)\r\n at C:\\ProgramData\\Titanium\\mobilesdk\\win32\\6.0.0.v20161002235150\\node_modules\\node-appc\\node_modules\\async\\lib\\async.js:274:29\r\n---------------------------------------------\r\n at Object.run (C:\\ProgramData\\Titanium\\mobilesdk\\win32\\6.0.0.v20161002235150\\node_modules\\node-appc\\lib\\subprocess.js:59:8)\r\n at AndroidModuleBuilder.tasks (C:\\ProgramData\\Titanium\\mobilesdk\\win32\\6.0.0.v20161002235150\\android\\cli\\commands\\_buildModule.js:1063:20)\r\n at C:\\ProgramData\\Titanium\\mobilesdk\\win32\\6.0.0.v20161002235150\\node_modules\\node-appc\\node_modules\\async\\lib\\async.js:718:13\r\n at Immediate.iterate (C:\\ProgramData\\Titanium\\mobilesdk\\win32\\6.0.0.v20161002235150\\node_modules\\node-appc\\node_modules\\async\\lib\\async.js:262:13)\r\n at processImmediate [as _immediateCallback] (timers.js:383:17)\r\n---------------------------------------------\r\n at Object.setImmediate (C:\\ProgramData\\Titanium\\mobilesdk\\win32\\6.0.0.v20161002235150\\node_modules\\node-appc\\node_modules\\async\\lib\\async.js:194:9)\r\n at C:\\ProgramData\\Titanium\\mobilesdk\\win32\\6.0.0.v20161002235150\\node_modules\\node-appc\\node_modules\\async\\lib\\async.js:272:35\r\n at C:\\ProgramData\\Titanium\\mobilesdk\\win32\\6.0.0.v20161002235150\\node_modules\\node-appc\\node_modules\\async\\lib\\async.js:44:16\r\n at C:\\ProgramData\\Titanium\\mobilesdk\\win32\\6.0.0.v20161002235150\\node_modules\\node-appc\\node_modules\\async\\lib\\async.js:723:17\r\n at C:\\ProgramData\\Titanium\\mobilesdk\\win32\\6.0.0.v20161002235150\\node_modules\\node-appc\\node_modules\\async\\lib\\async.js:167:37\r\n at AndroidModuleBuilder. (C:\\ProgramData\\Titanium\\mobilesdk\\win32\\6.0.0.v20161002235150\\android\\cli\\commands\\_buildModule.js:1049:4)\r\n at C:\\ProgramData\\Titanium\\mobilesdk\\win32\\6.0.0.v20161002235150\\node_modules\\node-appc\\node_modules\\async\\lib\\async.js:718:13\r\n at iterate (C:\\ProgramData\\Titanium\\mobilesdk\\win32\\6.0.0.v20161002235150\\node_modules\\node-appc\\node_modules\\async\\lib\\async.js:262:13)\r\n at async.forEachOfSeries.async.eachOfSeries (C:\\ProgramData\\Titanium\\mobilesdk\\win32\\6.0.0.v20161002235150\\node_modules\\node-appc\\node_modules\\async\\lib\\async.js:281:9)\r\n{code}\r\n\r\nh5.Steps to reproduce\r\n\r\n# Create an android module on Windows {{ti create --type module --name awesomOandroid --id com.awesomO.windows-p android --workspace-dir .}}\r\n# {{cd awesomOandroid \\android}}\r\n# {{ti build -p android}}\r\n\r\nh5.Actual result\r\n\r\nModule build fails\r\n\r\nh5.Expected result\r\n\r\nModule build should not fail", "attachment": [], "flagged": false, "summary": "CLI: Android module build errors out with spawn ti ENOENT when building without --build-only", "creator": { "name": "eharris", "key": "eharris", "displayName": "Ewan Harris", "active": true, "timeZone": "Europe/Dublin" }, "subtasks": [], "reporter": { "name": "eharris", "key": "eharris", "displayName": "Ewan Harris", "active": true, "timeZone": "Europe/Dublin" }, "environment": "OS: Microsoft Windows 10 Pro 10.0.14393\r\nAppc core: 6.0.0-55\r\nAppc NPM: 4.2.8-7\r\nTi SDK: 6.0.0.v20161002235150", "comment": { "comments": [ { "id": "423328", "author": { "name": "eharris", "key": "eharris", "displayName": "Ewan Harris", "active": true, "timeZone": "Europe/Dublin" }, "body": "Closing as a dupe of TIMOB-24912", "updateAuthor": { "name": "eharris", "key": "eharris", "displayName": "Ewan Harris", "active": true, "timeZone": "Europe/Dublin" }, "created": "2017-07-03T13:59:16.000+0000", "updated": "2017-07-03T13:59:16.000+0000" } ], "maxResults": 4, "total": 4, "startAt": 0 } } }