[TIMOB-11119] Android: Modules: Windows 7: android module packaging fails due to missing docs folder
GitHub Issue | n/a |
---|---|
Type | Bug |
Priority | High |
Status | Closed |
Resolution | Cannot Reproduce |
Resolution Date | 2016-08-26T03:59:32.000+0000 |
Affected Version/s | Release 3.0.0 |
Fix Version/s | Release 3.0.0, Sprint 2012-20 Core, 2012 Sprint 20 |
Components | Android, Tooling |
Labels | core, qe-3.4.0, qe-and082012 |
Reporter | Dustin Hyde |
Assignee | Chris Barber |
Created | 2012-08-30T16:07:04.000+0000 |
Updated | 2017-03-31T21:55:08.000+0000 |
Description
Android Modules fail to package on Windows 7.
This is not a regression. This was uncovered during clean install testing.
Error Log:
\build\docs folder.
Steps to Reproduce:
1. On Windows 7, create an Android Module.
2. Package the module (i.e., to Project, to SDK folder).
Actual Result:
Build folder error.
Expected Result:
Module should package.
Executing build.xml...
C:\Users\QE\AppData\Roaming\Titanium\mobilesdk\win32\2.1.1.GA\module\android\build.xml:455: C:\Users\QE\Desktop\TISTUD-STABLE\TISTUD-STABLE-2.1.1\titanium_studio_workspace\AndroidModule\build\docs does not exist.
The work-around is to manually create a Attachments
File | Date | Size |
---|---|---|
androidmodule_docs_missing.PNG | 2014-09-18T10:29:10.000+0000 | 58568 |
The work-around is to manually create a
Was unable to reproduce. Here's a video of my experiences: http://screencast.com/t/bhQxjc47gz I'll keep this open for a bit in case Dustin wants to reply with more details.
This is reliably reproducible on clean VM install. Titanium SDK: 3.0.0.v20120924114913 Titanium Studio: 2.1.2.GA OS: Windows 7 VM (clean install)
@Allen, reassigning to you, since I've not been able to reproduce and you will have an opportunity to see the actual machine that is showing the failures. Please see my video (if you haven't already) to see what I tried.
This appears to be related to the version of ant that was included with Titanium Studio, as updating it to ant 1.8.4 seemed to fix the issue.
Moved back to Mobile. Studio can't change the ant version, so we need to make the build xml compatible with 1.8.2.
I just realized that this explanation makes no sense. After all, my video above shows me doing this in Titanium Studio, which is running ant 1.8.2. And i still am absolutely unable to reproduce this. Just tried it again. Are you trying the same module each time? If so, can you zip it up and give to me?
I used a default module that was created using the SDK. Steps I used to work around the issue: 1. Install Python 2.7, add to path. 2. Install Ant 1.8.4, add to path. 3. Install gperf, add to path. 3: Can now package from studio. 4. Remove ant from path. 5. Remove ant from studio plugins: Titanium Studio/plugins/org.apache.ant_1.8.2.v20120109-1030/bin 6. Replace studio plugin with ant 1.8.4 bin files. 7. Restart studio and package module. 7: Can now package from studio.
Okay, that changes things. Your comment from the 25th says nothing about gperf and python. The problem is python not ant.
Fail Case / Test Case
Pre-reqs
*To test the failcase, test with Studio 2.1.3 (i.e., stable). To test the fix you MUST use the Studio nightly.* Use Windows 7 and make sure you have no python executable reachable via your path. Be sure to test this: go to the Command Prompt and enterpython
and verify that you are _not_ successfully ending up in a python shell.Via Studio
Open Titanium Studio, create a module project for Android.
Package that project.
In the fail case (when testing with Studio 2.1.3), you should see the same error mentioned by Dustin above. When testing the fix, you should see no error and the packaging should proceed successfully. This is because Studio tells the build script where the python executable (which ships with Studio) is found.
Via Command-Line.
Install ant 1.8.2 (or 1.8.4, it doesn't matter): http://archive.apache.org/dist/ant/binaries/
Put ant's "bin" folder in your PATH.
Go to a command prompt.
Navigate to the module project you created above.
Run
ant
.In the fail case, you should see the error mentioned by Dustin above, but also -- above it -- this message:
When testing the fix you should see that the build fails faster and you actually get useful information about what was really wrong (namely, python could not be found.)
Waiting now on TISTUD-2368 and on some new code from me. Previous PR has been closed without merging.
PR Ready: https://github.com/appcelerator/titanium_mobile/pull/3088 But wait for my go-ahead before testing. We need to wait until TISTUD-2368's new feature is available in Studio nightlies.
Discussions ongoing in TISTUD-2368.
PR can be processed now https://github.com/appcelerator/titanium_mobile/pull/3088
Verifying the fix with studio: 1.Tested with steps mentioned by bill using nightly studio. 2.Android module packaging was successful,with python which ships with studio. Verifying fix on command line: 1.Tested with steps mentioned by bill. 2.Got the following output:
Environment: Titanium studio : 3.1.0.201212082257 SDK Version : 3.0.0.v20121207120202 CLI version : 3.0.20 OS : win 7 64 bit
Reopening the ticket as I am getting same error on Windows 8.1 I tried to package android module *with and without* python. Both failed with the same error message as [~dhyde] mentioned in description. I attached the screenshot. Please refer. Tested. Test Environment: Appc-Studio: 3.4.0.201409161950 Titanium SDK: 3.4.0.v20140917120000 Titanium CLI: 3.4.0-rc4 Alloy : 1.5.0-rc2 OS: Windows 8.1 (x64) ANT : 1.9.4 gperf 3.0.1
I was able to reproduce the issue.
1. When I try to package a module from studio:
Studio logs show me it found python 2.7.3(I guess this is the one which comes with studio as I don't have python on the machine). Also, I have Ant 1.9.4 installed. packaging fails with error:According to the fix which went in this ticket the packaging should succeed in studio but is not succeeding.
2. When I try to package a module from command line:
I have Ant 1.9.4 installed. I go to the module folder from command line & run Ant. It gives me error which is expected according to Bill Dawson's steps mentioned in the above comments.Environment:
Appc Studio : 3.4.0.201409161950 Ti SDK : 3.4.0.v20140918202513 ANT : 1.9.4 No Python installed on the system. Gperf : 3.0.1 Titanium CLI: 3.4.0-rc4 Alloy : 1.5.0-rc2 Win : 8.1 64-bitI was unable to reproduce with Titanium SDK 5.4.0 on Windows 10 using the new module build system.
Unable to reproduce this issue, tested with the following environment; Pixel (7.1) MacOS 10.11.6 (15G31) Studio 4.8.1.201612050850 Ti SDK 6.0.3 GA Appc NPM 4.2.8 Appc CLI 6.1.0 Ti CLI 5.0.11 Alloy 1.9.5 Arrow 1.10.1 Xcode 8.2 (8C38) Node v4.6.0 Java 1.7.0_80