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

[Android][Java] Remove deprecated Java finalize to unblock android chip-tool compilation. #37399

Closed
yunhanw-google opened this issue Feb 5, 2025 · 0 comments · Fixed by #37417
Assignees
Labels

Comments

@yunhanw-google
Copy link
Contributor

yunhanw-google commented Feb 5, 2025

Since Java 9, Finalize has been marked as deprecated, compiler are showing them as warning, our matter rules.gni is treating warning as error, so that local compilation fails.

We need update the below files to remove finalize.

2025-02-04 07:01:40 INFO [1716/1730] ACTION //src/controller/java:android_chip_im__javac(//build/toolchain/android:android_arm64)
2025-02-04 07:01:40 INFO FAILED: gen/src/controller/java/android_chip_im.classlist
2025-02-04 07:01:40 INFO python3 ../../build/chip/java/javac_runner.py --classdir obj/src/controller/java/android_chip_im/classes --outfile gen/src/controller/java/android_chip_im.classlist --build-config gen/src/controller/java/android_chip_im.json -- -d obj/src/controller/java/android_chip_im/classes @gen/src/controller/java/android_chip_im.sources -Werror -Xlint:all -Xlint:deprecation -parameters -Xlint:-options -source 8 -target 8
2025-02-04 07:01:40 INFO ../../src/controller/java/src/chip/devicecontroller/ExtendableInvokeCallbackJni.java:86: warning: [removal] finalize() in Object has been deprecated and marked for removal
2025-02-04 07:01:40 INFO protected void finalize() throws Throwable {
2025-02-04 07:01:40 INFO ^
2025-02-04 07:01:40 INFO ../../src/controller/java/src/chip/devicecontroller/ExtendableInvokeCallbackJni.java:87: warning: [removal] finalize() in Object has been deprecated and marked for removal
2025-02-04 07:01:40 INFO super.finalize();
2025-02-04 07:01:40 INFO ^
2025-02-04 07:01:40 INFO error: warnings found and -Werror specified
2025-02-04 07:01:40 INFO ../../src/controller/java/src/chip/devicecontroller/GetConnectedDeviceCallbackJni.java:40: warning: [removal] finalize() in Object has been deprecated and marked for removal
2025-02-04 07:01:40 INFO protected void finalize() throws Throwable {
2025-02-04 07:01:40 INFO ^
2025-02-04 07:01:40 INFO ../../src/controller/java/src/chip/devicecontroller/GetConnectedDeviceCallbackJni.java:41: warning: [removal] finalize() in Object has been deprecated and marked for removal
2025-02-04 07:01:40 INFO super.finalize();
2025-02-04 07:01:40 INFO ^
2025-02-04 07:01:40 INFO ../../src/controller/java/src/chip/devicecontroller/InvokeCallbackJni.java:61: warning: [removal] finalize() in Object has been deprecated and marked for removal
2025-02-04 07:01:40 INFO protected void finalize() throws Throwable {
2025-02-04 07:01:40 INFO ^
2025-02-04 07:01:40 INFO ../../src/controller/java/src/chip/devicecontroller/InvokeCallbackJni.java:62: warning: [removal] finalize() in Object has been deprecated and marked for removal
2025-02-04 07:01:40 INFO super.finalize();
2025-02-04 07:01:40 INFO ^
2025-02-04 07:01:40 INFO ../../src/controller/java/src/chip/devicecontroller/ReportCallbackJni.java:94: warning: [removal] finalize() in Object has been deprecated and marked for removal
2025-02-04 07:01:40 INFO protected void finalize() throws Throwable {
2025-02-04 07:01:40 INFO ^
2025-02-04 07:01:40 INFO ../../src/controller/java/src/chip/devicecontroller/ReportCallbackJni.java:95: warning: [removal] finalize() in Object has been deprecated and marked for removal
2025-02-04 07:01:40 INFO super.finalize();
2025-02-04 07:01:40 INFO ^
2025-02-04 07:01:40 INFO ../../src/controller/java/src/chip/devicecontroller/WriteAttributesCallbackJni.java:67: warning: [removal] finalize() in Object has been deprecated and marked for removal
2025-02-04 07:01:40 INFO protected void finalize() throws Throwable {
2025-02-04 07:01:40 INFO ^
2025-02-04 07:01:40 INFO ../../src/controller/java/src/chip/devicecontroller/WriteAttributesCallbackJni.java:68: warning: [removal] finalize() in Object has been deprecated and marked for removal
2025-02-04 07:01:40 INFO super.finalize();
2025-02-04 07:01:40 INFO ^
2025-02-04 07:01:40 INFO ../../src/controller/java/generated/java/chip/devicecontroller/ChipClusters.java:168: warning: [removal] finalize() in Object has been deprecated and marked for removal
2025-02-04 07:01:40 INFO protected void finalize() throws Throwable {
2025-02-04 07:01:40 INFO ^
2025-02-04 07:01:40 INFO ../../src/controller/java/generated/java/chip/devicecontroller/ChipClusters.java:169: warning: [removal] finalize() in Object has been deprecated and marked for removal
2025-02-04 07:01:40 INFO super.finalize();
2025-02-04 07:01:40 INFO ^
2025-02-04 07:01:40 INFO 1 error
2025-02-04 07:01:40 INFO 12 warnings
2025-02-04 07:01:40 INFO Traceback (most recent call last):
2025-02-04 07:01:40 INFO File "/usr/local/google/home/yunhanw/workspace/connectedhomeip/out/android-arm64-chip-tool/../../build/chip/java/javac_runner.py", line 146, in
2025-02-04 07:01:40 INFO sys.exit(main())
2025-02-04 07:01:40 INFO ^^^^^^
2025-02-04 07:01:40 INFO File "/usr/local/google/home/yunhanw/workspace/connectedhomeip/out/android-arm64-chip-tool/../../build/chip/java/javac_runner.py", line 130, in main
2025-02-04 07:01:40 INFO retcode = subprocess.check_call(java_args + args.rest)
2025-02-04 07:01:40 INFO ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
2025-02-04 07:01:40 INFO File "/usr/lib/python3.11/subprocess.py", line 413, in check_call
2025-02-04 07:01:40 INFO raise CalledProcessError(retcode, cmd)
2025-02-04 07:01:40 INFO subprocess.CalledProcessError: Command '['/usr/local/buildtools/java/jdk/bin/javac', '-classpath', 'lib/src/controller/java/libMatterTlv.jar:lib/src/controller/java/CHIPClusters.jar:lib/third_party/java_deps/jsr305-3.0.2.jar:lib/src/controller/java/android.jar:lib/src/controller/java/CHIPClusterID.jar', '-d', 'obj/src/controller/java/android_chip_im/classes', '@gen/src/controller/java/android_chip_im.sources', '-Werror', '-Xlint:all', '-Xlint:deprecation', '-parameters', '-Xlint:-options', '-source', '8', '-target', '8']' returned non-zero exit status 1.
2025-02-04 07:02:03 INFO [1717/1730] ACTION //:matter_build_venv._install_3p_deps(//third_party/pigweed/repo/pw_build/python_toolchain:python)
2025-02-04 07:02:03 INFO ninja: build stopped: subcommand failed.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
Status: Done
Development

Successfully merging a pull request may close this issue.

3 participants