@Override public void doFix(@NotNull Project project, @NotNull VirtualFile file) { final String javaErrorMessage = JavaProjectSdkSetupValidator.INSTANCE.getErrorMessage(project, file); if (javaErrorMessage != null) { JavaProjectSdkSetupValidator.INSTANCE.doFix(project, file); return; } final Module module = ModuleUtilCore.findModuleForFile(file, project); final String moduleName = module != null && !module.isDisposed() ? module.getName() : null; ProjectSettingsService.getInstance(project) .showModuleConfigurationDialog(moduleName, ClasspathEditor.NAME); }
@Nullable @Override public String getErrorMessage(@NotNull Project project, @NotNull VirtualFile file) { final String javaErrorMessage = JavaProjectSdkSetupValidator.INSTANCE.getErrorMessage(project, file); if (javaErrorMessage != null) { return javaErrorMessage; } if (DumbService.isDumb(project)) { return null; } final PsiClass nodeClass = JavaPsiFacade.getInstance(project) .findClass(JavaFxCommonNames.JAVAFX_SCENE_NODE, GlobalSearchScope.allScope(project)); if (nodeClass == null) { return "The JavaFX runtime is not configured. " + "Either use a JDK that has the JavaFX built in, or add a JavaFX library to the classpath"; } return null; }