diff --git a/tests/StagedInstallTest/Android.bp b/tests/StagedInstallTest/Android.bp
index b001fe1..45c1c73 100644
--- a/tests/StagedInstallTest/Android.bp
+++ b/tests/StagedInstallTest/Android.bp
@@ -27,7 +27,6 @@
     static_libs: [
         "testng",
         "compatibility-tradefed",
-        "module_test_util",
         "frameworks-base-hostutils",
         "cts-install-lib-host",
     ],
diff --git a/tests/StagedInstallTest/src/com/android/tests/stagedinstallinternal/host/StagedInstallInternalTest.java b/tests/StagedInstallTest/src/com/android/tests/stagedinstallinternal/host/StagedInstallInternalTest.java
index 407c65b..b7c9e59 100644
--- a/tests/StagedInstallTest/src/com/android/tests/stagedinstallinternal/host/StagedInstallInternalTest.java
+++ b/tests/StagedInstallTest/src/com/android/tests/stagedinstallinternal/host/StagedInstallInternalTest.java
@@ -27,7 +27,6 @@
 
 import com.android.ddmlib.Log;
 import com.android.tests.rollback.host.AbandonSessionsRule;
-import com.android.tests.util.ModuleTestUtils;
 import com.android.tradefed.testtype.DeviceJUnit4ClassRunner;
 import com.android.tradefed.testtype.junit4.BaseHostJUnit4Test;
 import com.android.tradefed.util.ProcessInfo;
@@ -52,7 +51,6 @@
     private static final String SHIM_V2 = "com.android.apex.cts.shim.v2.apex";
     private static final String APK_A = "TestAppAv1.apk";
 
-    private final ModuleTestUtils mTestUtils = new ModuleTestUtils(this);
     private final InstallUtilsHost mHostUtils = new InstallUtilsHost(this);
 
     /**
@@ -101,7 +99,7 @@
         assumeTrue("Device does not support updating APEX",
                 mHostUtils.isApexUpdateSupported());
 
-        final File apexFile = mTestUtils.getTestFile(SHIM_V2);
+        final File apexFile = mHostUtils.getTestFile(SHIM_V2);
         final String output = getDevice().executeAdbCommand("install", "--staged",
                 "--staged-ready-timeout", "60000", apexFile.getAbsolutePath());
         assertThat(output).contains("Reboot device to apply staged session");
@@ -116,7 +114,7 @@
         assumeTrue("Device does not support updating APEX",
                 mHostUtils.isApexUpdateSupported());
 
-        final File apexFile = mTestUtils.getTestFile(SHIM_V2);
+        final File apexFile = mHostUtils.getTestFile(SHIM_V2);
         final String output = getDevice().executeAdbCommand("install", "--staged",
                 apexFile.getAbsolutePath());
         assertThat(output).contains("Reboot device to apply staged session");
@@ -131,7 +129,7 @@
         assumeTrue("Device does not support updating APEX",
                 mHostUtils.isApexUpdateSupported());
 
-        final File apexFile = mTestUtils.getTestFile(SHIM_V2);
+        final File apexFile = mHostUtils.getTestFile(SHIM_V2);
         final String output = getDevice().executeAdbCommand("install", "--staged",
                 "--staged-ready-timeout", "0", apexFile.getAbsolutePath());
         assertThat(output).doesNotContain("Reboot device to apply staged session");
@@ -147,7 +145,7 @@
         assumeTrue("Device does not support updating APEX",
                 mHostUtils.isApexUpdateSupported());
 
-        final File apexFile = mTestUtils.getTestFile(SHIM_V2);
+        final File apexFile = mHostUtils.getTestFile(SHIM_V2);
         String output = getDevice().executeAdbCommand("install", "--staged",
                 "--enable-rollback", apexFile.getAbsolutePath());
         assertThat(output).contains("Reboot device to apply staged session");
@@ -164,8 +162,8 @@
         assumeTrue("Device does not support updating APEX",
                 mHostUtils.isApexUpdateSupported());
 
-        final File apexFile = mTestUtils.getTestFile(SHIM_V2);
-        final File apkFile = mTestUtils.getTestFile(APK_A);
+        final File apexFile = mHostUtils.getTestFile(SHIM_V2);
+        final File apkFile = mHostUtils.getTestFile(APK_A);
         final String output = getDevice().executeAdbCommand("install-multi-package",
                 apexFile.getAbsolutePath(), apkFile.getAbsolutePath());
         assertThat(output).contains("Created parent session");
