mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-04-19 13:02:30 +07:00
[java, run configurations]support excluded module-info.java in compiler settings for application execution IDEA-359628
GitOrigin-RevId: 429ffefddc2d8b4b0d3cea96d955cc3ecf229821
This commit is contained in:
committed by
intellij-monorepo-bot
parent
df7529c232
commit
fe9767c257
@@ -1,7 +1,8 @@
|
||||
// Copyright 2000-2022 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
|
||||
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
|
||||
package com.intellij.execution.application;
|
||||
|
||||
import com.intellij.codeInsight.daemon.impl.analysis.JavaModuleGraphUtil;
|
||||
import com.intellij.compiler.CompilerConfiguration;
|
||||
import com.intellij.debugger.settings.DebuggerSettings;
|
||||
import com.intellij.execution.*;
|
||||
import com.intellij.execution.configurations.JavaParameters;
|
||||
@@ -107,8 +108,12 @@ public abstract class ApplicationCommandLineState<T extends
|
||||
if (mainModule != null) {
|
||||
boolean inLibrary = mainModule instanceof PsiCompiledElement || mainModule instanceof LightJavaModule;
|
||||
if (!inLibrary || ReadAction.compute(() -> JavaModuleGraphUtil.findNonAutomaticDescriptorByModule(module.getModule(), false)) != null) {
|
||||
params.setModuleName(ReadAction.compute(() -> mainModule.getName()));
|
||||
dumbService.runReadActionInSmartMode(() -> JavaParametersUtil.putDependenciesOnModulePath(params, mainModule, false));
|
||||
boolean isExcluded = CompilerConfiguration.getInstance(module.getProject())
|
||||
.isExcludedFromCompilation(mainModule.getContainingFile().getVirtualFile());
|
||||
if(!isExcluded) {
|
||||
params.setModuleName(ReadAction.compute(() -> mainModule.getName()));
|
||||
dumbService.runReadActionInSmartMode(() -> JavaParametersUtil.putDependenciesOnModulePath(params, mainModule, false));
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user