diff options
author | 2024-11-18 15:52:46 -0800 | |
---|---|---|
committer | 2024-11-18 15:52:46 -0800 | |
commit | 9d3c24bbfaa83364f2c4067a3d58656ccf813a22 (patch) | |
tree | c9ec520354885672ba70e1bf8e388c30f416bb87 /ravenwood/junit-impl-src | |
parent | aea105b74929663cd9766948b521a864941f5cab (diff) |
Dump JVM arguments on startup
Flag: EXEMPT host test change only
Bug: 371602426
Test: atest RavenwoodBivalentTest, check the log
Change-Id: I061dad98f1e1f2ebea3dba41a48307c96b990010
Diffstat (limited to 'ravenwood/junit-impl-src')
-rw-r--r-- | ravenwood/junit-impl-src/android/platform/test/ravenwood/RavenwoodRuntimeEnvironmentController.java | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/ravenwood/junit-impl-src/android/platform/test/ravenwood/RavenwoodRuntimeEnvironmentController.java b/ravenwood/junit-impl-src/android/platform/test/ravenwood/RavenwoodRuntimeEnvironmentController.java index 1c1f15761329..979076eaabfd 100644 --- a/ravenwood/junit-impl-src/android/platform/test/ravenwood/RavenwoodRuntimeEnvironmentController.java +++ b/ravenwood/junit-impl-src/android/platform/test/ravenwood/RavenwoodRuntimeEnvironmentController.java @@ -67,6 +67,7 @@ import com.android.ravenwood.common.SneakyThrow; import com.android.server.LocalServices; import com.android.server.compat.PlatformCompat; +import org.junit.internal.management.ManagementFactory; import org.junit.runner.Description; import java.io.File; @@ -204,6 +205,8 @@ public class RavenwoodRuntimeEnvironmentController { // Some process-wide initialization. (maybe redirect stdout/stderr) RavenwoodCommonUtils.loadJniLibrary(LIBRAVENWOOD_INITIALIZER_NAME); + dumpCommandLineArgs(); + // We haven't initialized liblog yet, so directly write to System.out here. RavenwoodCommonUtils.log(TAG, "globalInitInner()"); @@ -588,4 +591,18 @@ public class RavenwoodRuntimeEnvironmentController { + " access to system property '" + key + "' denied via RavenwoodConfig"); } } + + private static void dumpCommandLineArgs() { + Log.i(TAG, "JVM arguments:"); + + // Note, we use the wrapper in JUnit4, not the actual class ( + // java.lang.management.ManagementFactory), because we can't see the later at the build + // because this source file is compiled for the device target, where ManagementFactory + // doesn't exist. + var args = ManagementFactory.getRuntimeMXBean().getInputArguments(); + + for (var arg : args) { + Log.i(TAG, " " + arg); + } + } } |