diff options
Diffstat (limited to 'src/tools')
-rw-r--r-- | src/tools/android/java/com/google/devtools/build/android/resources/RClassGenerator.java | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/src/tools/android/java/com/google/devtools/build/android/resources/RClassGenerator.java b/src/tools/android/java/com/google/devtools/build/android/resources/RClassGenerator.java index be25c0f6fa..8735e9ba8c 100644 --- a/src/tools/android/java/com/google/devtools/build/android/resources/RClassGenerator.java +++ b/src/tools/android/java/com/google/devtools/build/android/resources/RClassGenerator.java @@ -109,7 +109,14 @@ public class RClassGenerator { packageDir = new File(packageDir, folder); } File rClassFile = new File(packageDir, SdkConstants.FN_COMPILED_RESOURCE_CLASS); + // At least create the outFolder that was requested. However, if there are no symbols, don't + // create the R.class and inner class files (no need to have an empty class). Files.createParentDirs(rClassFile); + Table<String, String, SymbolEntry> symbols = getAllSymbols(); + if (symbols.isEmpty()) { + return; + } + String packageWithSlashes = packageName.replaceAll("\\.", "/"); String rClassName = packageWithSlashes + "/R"; ClassWriter classWriter = new ClassWriter(ClassWriter.COMPUTE_MAXS); @@ -119,9 +126,7 @@ public class RClassGenerator { classWriter.visitSource(SdkConstants.FN_RESOURCE_CLASS, null); writeConstructor(classWriter); - Table<String, String, SymbolEntry> symbols = getAllSymbols(); Table<String, String, SymbolEntry> values = getSymbols(symbolValues); - Set<String> rowSet = symbols.rowKeySet(); List<String> rowList = new ArrayList<>(rowSet); Collections.sort(rowList); |