{ "id": "61140", "key": "TIMOB-508", "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": "5", "description": "All attempts at reproducing this issue failed, or not enough information was available to reproduce the issue. Reading the code produces no clues as to why this behavior would occur. If more information appears later, please reopen the issue.", "name": "Cannot Reproduce" }, "resolutiondate": "2012-07-25T13:18:20.000+0000", "created": "2011-04-15T02:30:32.000+0000", "priority": { "name": "Medium", "id": "3" }, "labels": [ "android", "class-not-found", "deployment", "droid", "emulator", "kitchensink" ], "versions": [], "issuelinks": [ { "id": "19170", "type": { "id": "10003", "name": "Relates", "inward": "relates to", "outward": "relates to" }, "outwardIssue": { "id": "94532", "key": "TIMOB-9901", "fields": { "summary": "TiAPI: Review and clean up platform bugs and reduce bug count by 20%.", "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": "High", "id": "2" }, "issuetype": { "id": "7", "description": "gh.issue.story.desc", "name": "Story", "subtask": false } } } } ], "assignee": { "name": "ngupta", "key": "ngupta", "displayName": "Neeraj Gupta", "active": true, "timeZone": "America/Los_Angeles" }, "updated": "2012-07-26T20:55:04.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" } ], "description": "{html}

I cannot deploy the KitchenSink demo app on any form of\nAndroid emulator. I downloaded the
\napp via the download button (not git) which offered a zip or tar\narchive. The base directory
\nof the archive is:

\n
\nls -l appcelerator-KitchenSink-4d0db58/\ntotal 32\ndrwxr-xr-x  3 cwolf  cwolf    102 Mar  2 00:49 0.8.1\ndrwxr-xr-x  2 cwolf  cwolf     68 Mar  2 00:48 0.9.x\n-rwxr-xr-x  1 cwolf  cwolf  11485 Feb 26 09:39 LICENSE\n-rwxr-xr-x  1 cwolf  cwolf    709 Feb 26 09:39 README.md\n
\n

I imported the project into the Titanium IDE and set the log\nfilter to \"debug\" and pressed
\n\"launch\" it seems to always have a class-not-found upon compilation\nphase. The relavant log output is:

\n
\n[DEBUG] javac -classpath /opt/android-sdk/platforms/android-1.6/android.jar:/Library/Application Support/Titanium/mobilesdk/osx/0.9.3/android/titanium.jar -d /Users/cwolf/Desktop/Downloads/appcelerator-KitchenSink-4d0db58/0.8.1/KitchenSink/build/android/bin/classes -sourcepath /Users/cwolf/Desktop/Downloads/appcelerator-KitchenSink-4d0db58/0.8.1/KitchenSink/build/android/src /Users/cwolf/Desktop/Downloads/appcelerator-KitchenSink-4d0db58/0.8.1/KitchenSink/build/android/src/com/appcelerator/kitchensink/KitchensinkActivity.java /Users/cwolf/Desktop/Downloads/appcelerator-KitchenSink-4d0db58/0.8.1/KitchenSink/build/android/src/com/appcelerator/kitchensink/KitchensinkAppInfo.java /Users/cwolf/Desktop/Downloads/appcelerator-KitchenSink-4d0db58/0.8.1/KitchenSink/build/android/src/com/appcelerator/kitchensink/KitchensinkApplication.java /Users/cwolf/Desktop/Downloads/appcelerator-KitchenSink-4d0db58/0.8.1/KitchenSink/build/android/src/com/appcelerator/kitchensink/R.java\n[ERROR] javac /Users/cwolf/Desktop/Downloads/appcelerator-KitchenSink-4d0db58/0.8.1/KitchenSink/build/android/src/com/appcelerator/kitchensink/KitchensinkActivity.java:3: cannot access org.appcelerator.titanium.TiRootActivity\n
\n

I tried both the \"0.9.x\" and \"0.8.1\" version of the\nKitchenSink app and got the same error.
\nNext, I looked at the javac command line (above) to see\nwhat jars were being referenced and
\nlooked in the titanium.jar and see the class that's\nreported not found is, in fact, in the jar:

\n
\n$ cd /Library/Application Support/Titanium/mobilesdk/osx/0.9.3/android\n$ jar tvf titanium.jar | grep TiRoot\n   414 Mon Mar 01 20:14:56 EST 2010 org/appcelerator/titanium/TiRootActivity$TiActivityRef.class\n   918 Mon Mar 01 20:14:56 EST 2010 org/appcelerator/titanium/TiRootActivity$1.class\n  6043 Mon Mar 01 20:14:56 EST 2010 org/appcelerator/titanium/TiRootActivity.class\n
\n

I have MacOS 10.5.8. Java version 1.5.0_22 (apple). I\ntried using all Android SDK emulations,
\n1.5, 1.6 and 2.0 (it would be helpful if a \"readme\" in\nKitchenSink indicated which to use)

{html}", "attachment": [ { "id": "17860", "filename": "kitchensink_eclipse.png", "author": { "name": "chriswolf", "key": "chriswolf", "displayName": "Chris Wolf", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2011-04-15T02:30:34.000+0000", "size": 148453, "mimeType": "image/png" }, { "id": "17859", "filename": "mobiles.py", "author": { "name": "chriswolf", "key": "chriswolf", "displayName": "Chris Wolf", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2011-04-15T02:30:33.000+0000", "size": 910, "mimeType": "application/octet-stream" } ], "flagged": false, "summary": "cannot access org.appcelerator.titanium.TiRootActivity upon trying to deploy KitchenSink demo app on Android", "creator": { "name": "chriswolf", "key": "chriswolf", "displayName": "Chris Wolf", "active": true, "timeZone": "America/Los_Angeles" }, "subtasks": [], "reporter": { "name": "chriswolf", "key": "chriswolf", "displayName": "Chris Wolf", "active": true, "timeZone": "America/Los_Angeles" }, "environment": null, "comment": { "comments": [ { "id": "123414", "author": { "name": "chriswolf", "key": "chriswolf", "displayName": "Chris Wolf", "active": true, "timeZone": "America/Los_Angeles" }, "body": "{html}

Changing assignment from \"none\" to \"Kevin Whinnery\", since\nthat's the submitter I see in the git log.

{html}", "updateAuthor": { "name": "chriswolf", "key": "chriswolf", "displayName": "Chris Wolf", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2011-04-15T02:30:34.000+0000", "updated": "2011-04-15T02:30:34.000+0000" }, { "id": "123415", "author": { "name": "chriswolf", "key": "chriswolf", "displayName": "Chris Wolf", "active": true, "timeZone": "America/Los_Angeles" }, "body": "{html}

I ran the Android SDK and AVD manager and updated to the latest\nversions and still get the problem.

{html}", "updateAuthor": { "name": "chriswolf", "key": "chriswolf", "displayName": "Chris Wolf", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2011-04-15T02:30:34.000+0000", "updated": "2011-04-15T02:30:34.000+0000" }, { "id": "123416", "author": { "name": "chriswolf", "key": "chriswolf", "displayName": "Chris Wolf", "active": true, "timeZone": "America/Los_Angeles" }, "body": "{html}

I tried loading the Eclipse project in the build\nsubdirectory, just to see what would happen and got the result show\nin the attached screen shot.

{html}", "updateAuthor": { "name": "chriswolf", "key": "chriswolf", "displayName": "Chris Wolf", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2011-04-15T02:30:34.000+0000", "updated": "2011-04-15T02:30:34.000+0000" }, { "id": "123417", "author": { "name": "chriswolf", "key": "chriswolf", "displayName": "Chris Wolf", "active": true, "timeZone": "America/Los_Angeles" }, "body": "{html}

I cut&paste the javac command from the log (above)\nand used it to create a shell script to run the compiler from the\ncommand line and was able to see additional error info not\ndisplayed in the Titanium log:

\n
\n./build/android/src/com/appcelerator/KitchenSink/KitchensinkActivity.java:3: cannot access org.appcelerator.titanium.TiRootActivity\nbad class file: /Library/Application Support/Titanium/mobilesdk/osx/0.9.3/android/titanium.jar(org/appcelerator/titanium/TiRootActivity.class)\nclass file has wrong version 50.0, should be 49.0\nPlease remove or make sure it appears in the correct subdirectory of the classpath.\nimport org.appcelerator.titanium.TiRootActivity;\n
\n

The class version mismatch indicated that I should be using\nJDK-1.6, not 1.5, which is the default setting on MacOS\n10.5.8. I then used the Apple Java Preferences.app to\nchange the JDK search order to try 1.6 first. This resolves the\nissue of building and running KitchenSink in the\nemulator.

\n

Unfortunately, I am now unable to deploy KitchenSink on\na real device, in my case, a Motorola Droid running\nAndroid-2.0.

{html}", "updateAuthor": { "name": "chriswolf", "key": "chriswolf", "displayName": "Chris Wolf", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2011-04-15T02:30:34.000+0000", "updated": "2011-04-15T02:30:34.000+0000" }, { "id": "123418", "author": { "name": "chriswolf", "key": "chriswolf", "displayName": "Chris Wolf", "active": true, "timeZone": "America/Los_Angeles" }, "body": "{html}

I changed the phone setting to allow non-Marketplace apps, and\nthis still does not help. There's no log or indication that the\ndeployment failed. Although I see this in the\n/var/log/system.log:

\n
\nMar  2 10:11:51 clozaril-2 [0x0-0xa25a25].com.appcelerator.titanium.developer[96952]: [15:11:51:841] [Titanium.API] [Information] (JavaScript.KKJSList) [ \"/Library/Application Support/Titanium/mobilesdk/osx/0.9.3/android/builder.py\", \"install\", \"\"KitchenSink\"\", \"\"/opt/android-sdk\"\", \"\"/Users/cwolf/src/appcelerator-KitchenSink-4d0db58/0.9.x/KitchenSink\"\", \"\"com.nolanwright.kitchensink\"\", \"\"3\"\", ]\n
\n

...if that means anything.

{html}", "updateAuthor": { "name": "chriswolf", "key": "chriswolf", "displayName": "Chris Wolf", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2011-04-15T02:30:34.000+0000", "updated": "2011-04-15T02:30:34.000+0000" }, { "id": "123419", "author": { "name": "chriswolf", "key": "chriswolf", "displayName": "Chris Wolf", "active": true, "timeZone": "America/Los_Angeles" }, "body": "{html}

I tried to run that builder.py from the command\nline:

\n
\n\"/Library/Application Support/Titanium/mobilesdk/osx/0.9.3/android/builder.py\" \\\n install, KitchenSink, /opt/android-sdk, \\\n /Users/cwolf/src/appcelerator-KitchenSink-4d0db58/0.9.x/KitchenSink, \\\n com.nolanwright.kitchensink, 3\n
\n

...but got the following except stack trace:

\n
\nTraceback (most recent call last):\n  File \"/Library/Application Support/Titanium/mobilesdk/osx/0.9.3/android/builder.py\", line 16, in ?\n    from android import Android\n  File \"/Library/Application Support/Titanium/mobilesdk/osx/0.9.3/android/android.py\", line 9, in ?\n    from mako.template import Template\n  File \"/Library/Application Support/Titanium/mobilesdk/osx/0.9.3/android/mako/template.py\", line 10, in ?\n    from mako.lexer import Lexer\n  File \"/Library/Application Support/Titanium/mobilesdk/osx/0.9.3/android/mako/lexer.py\", line 10, in ?\n    from mako import parsetree, exceptions\n  File \"/Library/Application Support/Titanium/mobilesdk/osx/0.9.3/android/mako/parsetree.py\", line 9, in ?\n    from mako import exceptions, ast, util, filters\n  File \"/Library/Application Support/Titanium/mobilesdk/osx/0.9.3/android/mako/ast.py\", line 9, in ?\n    from mako import exceptions, pyparser, util\n  File \"/Library/Application Support/Titanium/mobilesdk/osx/0.9.3/android/mako/pyparser.py\", line 25, in ?\n    from compiler import parse as compiler_parse\nImportError: cannot import name parse\n
\n

...but when I tried to run those lines in pyparser.py\nfrom the interpreter, everything looked fine:

\n
\n$ python\nPython 2.4.4 (#1, Oct 18 2006, 10:34:39) \n[GCC 4.0.1 (Apple Computer, Inc. build 5341)] on darwin\n>>> from compiler import parse as compiler_parse\n>>> from compiler import visitor\n>>> print compiler_parse\n<function parse at 0x76eb0>\n>>>\n
\n

Any ideas how I can debug this device deployment problem?

{html}", "updateAuthor": { "name": "chriswolf", "key": "chriswolf", "displayName": "Chris Wolf", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2011-04-15T02:30:34.000+0000", "updated": "2011-04-15T02:30:34.000+0000" }, { "id": "123420", "author": { "name": "chriswolf", "key": "chriswolf", "displayName": "Chris Wolf", "active": true, "timeZone": "America/Los_Angeles" }, "body": "{html}

I'm going to try reassigning to Nolan Wright, since it appears\nhe was the original developer of KitchenSink.

{html}", "updateAuthor": { "name": "chriswolf", "key": "chriswolf", "displayName": "Chris Wolf", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2011-04-15T02:30:36.000+0000", "updated": "2011-04-15T02:30:36.000+0000" }, { "id": "123421", "author": { "name": "chriswolf", "key": "chriswolf", "displayName": "Chris Wolf", "active": true, "timeZone": "America/Los_Angeles" }, "body": "{html}

I guess I should have watched the videos first. (I did read the\n\"getting started guide\") One of the videos
\npoints out that in addition to setting \"allow installation of\nnon-market apps\", you also need
\n\"usb debug\" turned on. This allowed me to install the app. Before I\nsaw this, I tried modifying mobiles.py to add my\nMotorola Droid's vendor and product code to the device lookup\ntable.
\nIt turns out not to matter, but I'll attach it anyway since\nusbprobe returns with zero exit
\nstatus (device was found).

\n

Feel free to close this ticket. Thanks and sorry for the\nnoise...

{html}", "updateAuthor": { "name": "chriswolf", "key": "chriswolf", "displayName": "Chris Wolf", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2011-04-15T02:30:36.000+0000", "updated": "2011-04-15T02:30:36.000+0000" }, { "id": "123422", "author": { "name": "chriswolf", "key": "chriswolf", "displayName": "Chris Wolf", "active": true, "timeZone": "America/Los_Angeles" }, "body": "{html}

I should add that one of the videos incorrectly states that\njava-5 (1.5) can be used, but I found that
\njava 1.6 is the minimum (at least for Android).

{html}", "updateAuthor": { "name": "chriswolf", "key": "chriswolf", "displayName": "Chris Wolf", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2011-04-15T02:30:36.000+0000", "updated": "2011-04-15T02:30:36.000+0000" }, { "id": "209385", "author": { "name": "pwang", "key": "pwang", "displayName": "Ping Wang", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Cannot reproduce.", "updateAuthor": { "name": "pwang", "key": "pwang", "displayName": "Ping Wang", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2012-07-25T13:18:05.000+0000", "updated": "2012-07-25T13:18:05.000+0000" } ], "maxResults": 10, "total": 10, "startAt": 0 } } }