diff --git a/java/app.go b/java/app.go
index ceb7791..a0c4912 100644
--- a/java/app.go
+++ b/java/app.go
@@ -150,7 +150,7 @@
 	}
 
 	a.outputFile = CreateAppPackage(ctx, aaptPackageFlags, a.outputFile, certificates)
-	ctx.InstallFileName(android.PathForModuleInstall(ctx, "app"), ctx.ModuleName()+".apk", a.outputFile)
+	ctx.InstallFile(android.PathForModuleInstall(ctx, "app"), ctx.ModuleName()+".apk", a.outputFile)
 }
 
 var aaptIgnoreFilenames = []string{
diff --git a/java/java.go b/java/java.go
index e2e15d4..89c2016 100644
--- a/java/java.go
+++ b/java/java.go
@@ -457,7 +457,7 @@
 func (j *Library) GenerateAndroidBuildActions(ctx android.ModuleContext) {
 	j.compile(ctx)
 
-	j.installFile = ctx.InstallFileName(android.PathForModuleInstall(ctx, "framework"), ctx.ModuleName()+".jar", j.outputFile)
+	j.installFile = ctx.InstallFile(android.PathForModuleInstall(ctx, "framework"), ctx.ModuleName()+".jar", j.outputFile)
 }
 
 func (j *Library) DepsMutator(ctx android.BottomUpMutatorContext) {
@@ -510,8 +510,8 @@
 	// Depend on the installed jar (j.installFile) so that the wrapper doesn't get executed by
 	// another build rule before the jar has been installed.
 	j.wrapperFile = android.PathForModuleSrc(ctx, j.binaryProperties.Wrapper)
-	j.binaryFile = ctx.InstallFile(android.PathForModuleInstall(ctx, "bin"),
-		j.wrapperFile, j.installFile)
+	j.binaryFile = ctx.InstallExecutable(android.PathForModuleInstall(ctx, "bin"),
+		ctx.ModuleName(), j.wrapperFile, j.installFile)
 }
 
 func (j *Binary) DepsMutator(ctx android.BottomUpMutatorContext) {
@@ -590,7 +590,7 @@
 
 	j.combinedClasspathFile = TransformClassesToJar(ctx, j.classJarSpecs, android.OptionalPath{}, nil)
 
-	ctx.InstallFileName(android.PathForModuleInstall(ctx, "framework"),
+	ctx.InstallFile(android.PathForModuleInstall(ctx, "framework"),
 		ctx.ModuleName()+".jar", j.combinedClasspathFile)
 }
 
