Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix(android): app/module builds fail with JDK 13 #11507

Merged
merged 11 commits into from
Mar 23, 2020

Conversation

jquick-axway
Copy link
Contributor

@jquick-axway jquick-axway commented Feb 29, 2020

JIRA:

Summary:

  • TIMOB-27778 Updated gradle build tools from 3.4.2 to 3.6.0.
  • TIMOB-27780 Hyperloop builds fail if JDK 12 or higher is installed.
    • Updated hyperloop module version from 5.0.1 to 5.0.2.
  • TIMOB-27781 App/Module builds will fail with Titanium 9.0.0 and JDK 13.
    • This is a regression. Titanium 8.x.x used to build fine with JDK 13 (except hyperloop).
    • Fixed by updating gradle wrapper/library from 5.4.1 to 6.2.1.
    • Gradle added JDK 13 support in version 6.0.0.

New Build Warning:
App builds will now log the following deprecation warning. This is because gradle 6.0.0 has deprecated an API that Google's gradle build tool is currently using. We're stuck with this until Google resolves it their 4.0.0 build tool which hasn't been released yet.

[INFO]  [GRADLE] Internal API constructor DefaultDomainObjectSet(Class<T>) has been deprecated. This is scheduled to be removed in Gradle 7.0. Please use ObjectFactory.domainObjectSet(Class<T>) instead. See https://docs.gradle.org/6.2.1/userguide/custom_gradle_types.html#domainobjectset for more details.

Note to QE:
On Mac, you can have multiple JDKs installed. After installing JDK 13 and running the below tests, you can select the older installed JDK by doing the following at the command line.

List the JDK versions installed on Mac.

/usr/libexec/java_home -V

Select the JDK version to use. You should set this in your .bash_profile file. Replace below <JavaVersion> with what was listed above.

export JAVA_HOME=$(/usr/libexec/java_home -v <JavaVersion>)

App Build Test:

  1. Set up a machine with JDK 13. (Reboot if you just installed it.)
  2. Build kitchensink-v2 for Android.
  3. Verify it builds and runs on Android without issue.

Module Build Test:

  1. Set up a machine with JDK 13. (Reboot if you just installed it.)
  2. Download a zip of the ti.imagefactory source.
  3. Open the Terminal.
  4. CD to directory: ./ti.imagefactory/android
  5. Enter: appc run -p android
  6. Verify module builds and its example project runs in the emulator.

Hyperloop Build Test:

  1. Set up a machine with JDK 12 or higher. (Reboot if you just installed it.)
  2. Download the hyperloop-example project.
  3. Build for Android.
  4. Verify app successfully builds and runs on device.

- Added "android.useAndroidX" gradle property which is now requried or else a build failure will occur.
- Resolved Java and C/C++ build order issue with newest tool.
- Updated gradle wrapper/library to version 6.2.1. (Gradle added JDK 13 support in 6.0.0.)
@jquick-axway jquick-axway added this to the 9.1.0 milestone Feb 29, 2020
@jquick-axway jquick-axway changed the title fix(android): app/module builds fail with JDK 13 or higher fix(android): app/module builds fail with JDK 13 Feb 29, 2020
@build
Copy link
Contributor

build commented Feb 29, 2020

Messages
📖

💾 Here's the generated SDK zipfile.

📖 ✊ The commits in this PR match our conventions! Feel free to Rebase and Merge this PR when ready.
📖

✅ All tests are passing
Nice one! All 6626 tests are passing.
(There are 699 skipped tests not included in that total)

Generated by 🚫 dangerJS against 67204e8

- JDK 12 dropped support for Java 6 language support. Hyperloop now compiles with Java 8 language.
- Updated hyperloop module version from 5.0.1 to 5.0.2.
Copy link
Contributor

@garymathews garymathews left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM!

@ssaddique
Copy link
Contributor

ssaddique commented Mar 20, 2020

FR partially passed. Please see JIRA ticket for details

@ssaddique
Copy link
Contributor

FR: Pass

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants