I'm using the latest tooling (as below) to build my project with the command
appc ti build -p ios -T device -D development --liveview
All generally works as expected until I quit the liveview session and attempt to build with the same command again.
Failed Output:
[INFO] App thinning disabled, skipping asset image sets
[INFO] Processing JavaScript files
An uncaught exception was thrown!
ENOTDIR: not a directory, open '/Users/gb/Documents/Work/Project/workspaces/appcelerator/Project/build/iphone/build/Products/Debug-iphoneos/Project.app/project/controller.js'
ENOTDIR: not a directory, open '/Users/gb/Documents/Work/Project/workspaces/appcelerator/Project/build/iphone/build/Products/Debug-iphoneos/Project.app/project/controller.js'
If I then attempt to build again I get this output...
[INFO] Processing JavaScript files
[INFO] Writing app properties
[INFO] Writing i18n files
[INFO] Processing Titanium symbols
[INFO] Removing files
[INFO] Optimizing .plist and .png files
[INFO] Invoking xcodebuild
[ERROR] ** BUILD FAILED **
[ERROR] The following build commands failed:
[ERROR] GenerateDSYMFile build/Products/Debug-iphoneos/Project.app.dSYM build/Products/Debug-iphoneos/Project.app/Project
[ERROR] (1 failure)
This output will be the same on each subsequent attempt to build
By chance, I found that if I reboot my machine I can build again, so I attempted all sorts of workarounds (cleaning build folders, derived data in xcode, restarting appc studio, building in studio....) to no avail, but eventually found a best case undesirable workaround to this issue in the form of:
appc logout
appc login
If I then attempt to build again it will succeed!
I can only assume therefore that the build issue has something to do with perhaps cached files associated with my dev cert as I understand this is regenerated on each login logout... Appc folks - any ideas?
The tooling seems to have become terribly unreliable over the last number of releases and needs some attention from the folks at Appcelerator IMO. Liveview is meant to speedup development time and it's great when it works (still probably lagging behind the awesome TiShadow of old), however in this instance it is breaking the build process and sucking up endless hours with indeterminate build behaviour. Am I doing something wrong???
Has anyone else discovered a better workaround or is this a known issue?
For reference, if I've built as above for development and then try to build for a "test" deployment with the command
appc ti build -p ios -T device -D test --liveview
I get the error (even after logging in and out and cleaning the project with appc ti clean)
[INFO] : Invoking xcodebuild
[ERROR] : ** BUILD FAILED **
[ERROR] : The following build commands failed:
[ERROR] : CompileC build/Intermediates/Project.build/Debug-iphoneos/Project.build/Objects-normal/armv7/TiUIiOSProxy.o Classes/TiUIiOSProxy.m normal armv7 objective-c com.apple.compilers.llvm.clang.1_0.compiler
[ERROR] : (1 failure)
This cannot be fixed until I do a reboot AFAICT!!!
Then, finally, the test deployment builds as expected and can usually be repeated (unlike development deployments).
All help greatly appreciated :)
Environment:
Operating System
Name = Mac OS X
Version = 10.11.6
Architecture = 64bit
# CPUs = 8
Memory = 8.0GB
Node.js
Node.js Version = 4.2.6
npm Version = 2.14.12
Appcelerator CLI
Installer = 4.2.7
Core Package = 5.4.0
Titanium CLI
CLI Version = 5.0.9
node-appc Version = 0.2.31
Titanium SDKs
5.4.0.GA
Version = 5.4.0
Install Location = /Users/gb/Library/Application Support/Titanium/mobilesdk/osx/5.4.0.GA
Platforms = android, mobileweb, iphone
git Hash = 4ba4c0a
git Timestamp = 08/10/16 05:43
node-appc Version = 0.2.35
...
Xcode
7.3.1 (build 7D1014) - Xcode default
Install Location = /Applications/Xcode.app/Contents/Developer/
iOS SDKs = 9.3
iOS Simulators = 9.3
Watch SDKs = 2.2
Watch Simulators = 2.2
Supported by TiSDK 5.4.0.GA = yes
EULA Accepted = yes
Teams = ********* (active)