-
-
Notifications
You must be signed in to change notification settings - Fork 381
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
Validate the word size (bitness) of JDK #1461
Comments
This will be because of the |
Right. Are you suggesting, though, that we shouldn't enforce such a bitness check? FWIW, when I change this to 1024m, the build succeeds on Windows for a 32bit JDK. |
Reducing the limit would be a bad idea becuase all testing of both the Android and Chaquopy Gradle plugins will be done at the default limit. So I agree the bitness check is the way to go. |
All right; that definitely makes sense. Given a 32bit JDK is technically feasible, it might be reasonable then to just implement a warning for the user instead of a hard stop error. |
Describe the bug
Building an Android app is not compatible with a 32bit JDK and Gradle outputs a bit of a cryptic error when such a JDK is used with Briefcase.
Steps to reproduce
JAVA_HOME
to the extracted directorybriefcase build android
Expected behavior
Briefcase enforces that the bitness of the JDK must match the bitness of the OS.
Of note, I learned in #1360 that bitness checks are deceptively difficult in the general case....so, beware...
Determining the bitness of the JDK may also be non-trivial given users can use any ole JDK. The
java -XshowSettings:properties -version
command includes with but it isn't entirely clear if arbitrary builds of JDK include the same information....and format it consistently...64bit `java -XshowSettings:properties -version` output
32bit `java -XshowSettings:properties -version` output
Screenshots
No response
Environment
0.3.16.dev225+g44f1045a.d20230923
Logs
Windows build log with 32bit JDK
briefcase.2023_09_23-11_43_47.build.log
Additional context
Of note, I was able to use a 32bit JDK on Linux....although, there's probably no need to allow this.
Linux build log with 32bit JDK
briefcase.2023_09_23-11_54_16.build.log
The text was updated successfully, but these errors were encountered: