import com.intellij.openapi.projectRoots.JavaSdkType;
import com.intellij.openapi.projectRoots.Sdk;
import com.intellij.openapi.projectRoots.ex.PathUtilEx;
-import com.intellij.openapi.roots.*;
+import com.intellij.openapi.roots.ContentEntry;
+import com.intellij.openapi.roots.ModuleRootManager;
+import com.intellij.openapi.roots.OrderEnumerator;
+import com.intellij.openapi.roots.SourceFolder;
import com.intellij.openapi.util.*;
import com.intellij.openapi.util.io.FileUtil;
-import com.intellij.openapi.util.text.StringUtil;
import com.intellij.openapi.vfs.VirtualFile;
import com.intellij.psi.*;
-import com.intellij.util.PathUtil;
import com.intellij.util.PathsList;
import com.intellij.util.containers.HashSet;
import org.jdom.Element;
import java.io.FileWriter;
import java.io.IOException;
import java.io.PrintWriter;
-import java.util.ArrayList;
import java.util.Collection;
-import java.util.regex.Pattern;
/**
* @author Eugene Zhuravlev
parameters.add("@" + sourcepathTempFile.getCanonicalPath());
final PrintWriter writer = new PrintWriter(new FileWriter(sourcepathTempFile));
try {
- writer.println("-sourcepath");
- writer.println(GeneralCommandLine.quote(OrderEnumerator.orderEntries(myProject).withoutSdk().withoutLibraries().getSourcePathsList().getPathsString()));
final Collection<String> packages = new HashSet<String>();
final Collection<String> sources = new HashSet<String>();
final Runnable findRunnable = new Runnable() {
if (packages.size() + sources.size() == 0) {
throw new CantRunException(JavadocBundle.message("javadoc.generate.no.classes.in.selected.packages.error"));
}
- writer.println(StringUtil.join(packages, " "));
- writer.println(StringUtil.join(sources, " "));
+ for (String aPackage : packages) {
+ writer.println(aPackage);
+ }
+ for (String source : sources) {
+ writer.println(source);
+ }
+ writer.println("-sourcepath");
+ final PathsList pathsList = OrderEnumerator.orderEntries(myProject).withoutSdk().withoutLibraries().getSourcePathsList();
+ for (String path : pathsList.getPathList()) {
+ writer.println(GeneralCommandLine.quote(FileUtil.toSystemIndependentName(path)));
+ }
}
finally {
writer.close();
final Module module = ModuleUtil.findModuleForFile(fileOrDir, myPsiManager.getProject());
if (file instanceof PsiJavaFile) {
final PsiJavaFile javaFile = (PsiJavaFile)file;
- if (containsPackagePrefix(module, javaFile.getPackageName())) {
- mySourceFiles.add(PathUtil.getLocalPath(javaFile.getVirtualFile()));
+ final String packageName = javaFile.getPackageName();
+ if (containsPackagePrefix(module, packageName) || packageName.length() == 0) {
+ mySourceFiles.add(GeneralCommandLine.quote(FileUtil.toSystemIndependentName(fileOrDir.getPath())));
}
else {
- myPackages.add(javaFile.getPackageName());
+ myPackages.add(packageName);
}
}
}