[AC-2296] iOS: Unable to build: TypeError: Arguments to path.join must be strings
GitHub Issue | n/a |
---|---|
Type | Bug |
Priority | n/a |
Status | Closed |
Resolution | Fixed |
Resolution Date | 2013-09-17T16:25:18.000+0000 |
Affected Version/s | n/a |
Fix Version/s | n/a |
Components | n/a |
Labels | triage |
Reporter | Yoram |
Assignee | Chris Barber |
Created | 2013-08-27T17:24:35.000+0000 |
Updated | 2016-03-08T07:41:18.000+0000 |
In the title you have: Titanium + SDK 3.1.0 Is there a reason you need to specifically build with 3.1.0? Can you not use Ti SDK 3.1.2 GA? If you run this in Terminal:
You'll see the CLI version installed. Also, if you run:
You'll see the node.js version installed. I'm not 100% certain, but the latest CLI uses node.js 0.10.x, which is likely incompatible with older Titanium SDKs.
I said I upgraded to the last version, thats why:
I have many SKD's installed (all are final not betas) and I found out that all are working except all versions between 3.0.0 - 3.1.0. It's working on 3.1.1, 3.1.2 but I can not move my projects now to this versions. What does it mean that the CLI version is incompatible with older SDK's?!? From now I can ONLY use 3.1.2 ?!? It's like killing all projects done a month ago.
Titanium SDK 3.1.X and newer works with Node.js 0.10. Sounds like the CLI can't find the Android SDK. Please run:
Then try building your app again.
Chris Barber, you said: "CLI can't find the Android SDK" ?!? I said it's NOT working for iOS builds. For Android it works fine.
[~mry] Based on the error output, it clearly states the problem is in /Users/Yoram/Library/Application Support/Titanium/mobilesdk/osx/3.1.0.GA/android/cli/commands/_build.js which is the Android build. So, either make sure the Android SDK path is defined correctly or please submit an error message that is an actual iOS build error.
Well, I saw that "android" string in the error result, but still, I'm just doing a build target for iPhone Emulator. ... and why the old version (before 3.0.0) still works? Btw, before I also updated the Android SDK, then it's stop compiling for 3.1.0, but using the next reference commands - it's working now for Android as well:
I didn't check the iOS build before fixing the Android issue so I don't know if it affects. I also don't understand how come a build of iOS affects Android? It's not a build per my target selection? If I run this: *ti config android.sdkPath /path/to/android-sdk*, will it affect builds for 3.1.2 ?
[~mry] It should be safe. If you're at all concerned, make a backup of ~/.titanium/config.json prior to running the "ti config android.sdkPath /path/to/android-sdk".
Chris, I ran this - "ti config android.sdkPath /path/to/android-sdk" and saw the change in config.json, but it doesn't help. I get same error :-( Any other idea? I might try to make changes for 3.1.2 but there might be users with same problem and would like old SDK's to run as well.
[~mry] You should have changed /path/to/android-sdk to whatever the path is on your computer to the Android SDK.
If I only knew how to do that. It's something related to 3.0.0-3.1.0 SDK's. Others work fine.
Following up here. I too am puzzled why the build log shows Android yet you say it's iOS. So, any 2.X SDKs work fine, but 3.X SDKs do not?
For iOS: It's working fine for 2.X SDKs and for 3.1.1 + 3.1.2, but not for SDKs between 3.0.0 - 3.1.0. For Android: No problem on any versions. The TITLE WAS WRONG! IT IS NOT ANDROID !!! ITS IOS! Guys, who ever changed this title, I know the log file out says "android" issue, but it's happening when building for iOS. Android builds without an error.
Btw, I gave up on that, trying to make it work for 3.1.0. I just made some changes and I release (yesterday) the new app version with 3.1.2 SDK. But for other programmers, this issue might be helpful.
[~mry], okay. It was the only error I was able to discern from the log files. Even if it's building fine for Android, its still important to note the error. Thank you for the report. Since it works fine in 3.1.2+, I'm going to mark the issue as resolved.
According to user, this is resolved in SDK 3.1.2+. Marking as resolved.