Fixed: [Issue 115] Integration with protoc does not create output
directories.
diff --git a/com.google.eclipse.protobuf.ui/src/com/google/eclipse/protobuf/ui/builder/OutputDirectories.java b/com.google.eclipse.protobuf.ui/src/com/google/eclipse/protobuf/ui/builder/OutputDirectories.java
index 884c12e..7de5121 100644
--- a/com.google.eclipse.protobuf.ui/src/com/google/eclipse/protobuf/ui/builder/OutputDirectories.java
+++ b/com.google.eclipse.protobuf.ui/src/com/google/eclipse/protobuf/ui/builder/OutputDirectories.java
@@ -8,6 +8,8 @@
*/
package com.google.eclipse.protobuf.ui.builder;
+import static java.io.File.separator;
+
import java.util.*;
import org.eclipse.core.resources.*;
@@ -40,8 +42,15 @@
}
private static IFolder findOrCreateOutputDirectory(IProject project, String outputFolderName) throws CoreException {
- IFolder outputFolder = project.getFolder(outputFolderName);
- if (!outputFolder.exists()) outputFolder.create(true, true, NO_MONITOR);
+ String[] segments = outputFolderName.split(separator);
+ IFolder outputFolder = null;
+ StringBuilder path = new StringBuilder();
+ for (String segment : segments) {
+ path.append(segment);
+ outputFolder = project.getFolder(path.toString());
+ if (!outputFolder.exists()) outputFolder.create(true, true, NO_MONITOR);
+ path.append(separator);
+ }
return outputFolder;
}