mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
javadoc: include in classpath only libraries from modules which participate in the scope (IDEA-116083)
This commit is contained in:
@@ -30,6 +30,7 @@ import com.intellij.ide.BrowserUtil;
|
||||
import com.intellij.openapi.diagnostic.Logger;
|
||||
import com.intellij.openapi.module.Module;
|
||||
import com.intellij.openapi.module.ModuleUtil;
|
||||
import com.intellij.openapi.module.ModuleUtilCore;
|
||||
import com.intellij.openapi.progress.ProgressManager;
|
||||
import com.intellij.openapi.project.Project;
|
||||
import com.intellij.openapi.projectRoots.JavaSdk;
|
||||
@@ -57,6 +58,7 @@ import java.io.IOException;
|
||||
import java.io.PrintWriter;
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
import java.util.Set;
|
||||
|
||||
/**
|
||||
* @author Eugene Zhuravlev
|
||||
@@ -228,13 +230,24 @@ public class JavadocConfiguration implements ModuleRunProfile, JDOMExternalizabl
|
||||
|
||||
parameters.addParametersString(OTHER_OPTIONS);
|
||||
|
||||
final Set<Module> modules = new HashSet<Module>();
|
||||
myGenerationOptions.accept(new PsiRecursiveElementWalkingVisitor() {
|
||||
@Override
|
||||
public void visitFile(PsiFile file) {
|
||||
final Module module = ModuleUtilCore.findModuleForPsiElement(file);
|
||||
if (module != null) {
|
||||
modules.add(module);
|
||||
}
|
||||
}
|
||||
});
|
||||
final PathsList classPath;
|
||||
final OrderEnumerator orderEnumerator = ProjectRootManager.getInstance(myProject).orderEntries(modules);
|
||||
if (jdk.getSdkType() instanceof JavaSdk) {
|
||||
classPath = OrderEnumerator.orderEntries(myProject).withoutSdk().withoutModuleSourceEntries().getPathsList();
|
||||
classPath = orderEnumerator.withoutSdk().withoutModuleSourceEntries().getPathsList();
|
||||
}
|
||||
else {
|
||||
//libraries are included into jdk
|
||||
classPath = OrderEnumerator.orderEntries(myProject).withoutModuleSourceEntries().getPathsList();
|
||||
classPath = orderEnumerator.withoutModuleSourceEntries().getPathsList();
|
||||
}
|
||||
final String classPathString = classPath.getPathsString();
|
||||
if (classPathString.length() > 0) {
|
||||
|
||||
@@ -25,6 +25,8 @@ import com.intellij.util.PathsList;
|
||||
import com.intellij.util.Processor;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
import java.util.Collection;
|
||||
|
||||
/**
|
||||
* Interface for convenient processing dependencies of a module or a project. Allows to process {@link OrderEntry}s and collect classes
|
||||
* and source roots.<p>
|
||||
|
||||
Reference in New Issue
Block a user