• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

Java SdkTable类代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了Java中com.intellij.openapi.projectRoots.SdkTable的典型用法代码示例。如果您正苦于以下问题:Java SdkTable类的具体用法?Java SdkTable怎么用?Java SdkTable使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。



SdkTable类属于com.intellij.openapi.projectRoots包,在下文中一共展示了SdkTable类的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。

示例1: getTargetJdk

import com.intellij.openapi.projectRoots.SdkTable; //导入依赖的package包/类
@Nullable
public final Sdk getTargetJdk() {
  final XmlTag tag = getXmlTag();
  final PsiFile containingFile = tag.getContainingFile();
  final AntBuildFileImpl buildFile = (AntBuildFileImpl)AntConfigurationBase.getInstance(containingFile.getProject()).getAntBuildFile(containingFile);
  if (buildFile != null) {
    String jdkName = AntBuildFileImpl.CUSTOM_JDK_NAME.get(buildFile.getAllOptions());
    if (jdkName == null || jdkName.length() == 0) {
      jdkName = AntConfigurationImpl.DEFAULT_JDK_NAME.get(buildFile.getAllOptions());
    }
    if (jdkName != null && jdkName.length() > 0) {
      return SdkTable.getInstance().findSdk(jdkName);
    }
  }
  return AntJavaSdkUtil.getBundleSdk();
}
 
开发者ID:consulo,项目名称:consulo-apache-ant,代码行数:17,代码来源:AntDomProject.java


示例2: getConfiguredAnts

import com.intellij.openapi.projectRoots.SdkTable; //导入依赖的package包/类
@NotNull
public Map<AntReference, Sdk> getConfiguredAnts()
{
	List<Sdk> sdksOfType = SdkTable.getInstance().getSdksOfType(AntSdkType.getInstance());
	Map<AntReference, Sdk> map = new LinkedHashMap<AntReference, Sdk>();
	for(Sdk sdk : sdksOfType)
	{
		if(sdk.isPredefined())
		{
			map.put(AntReference.BUNDLED_ANT, sdk);
		}
		else
		{
			map.put(new AntReference.BindedReference(sdk), sdk);
		}
	}
	return map;
}
 
开发者ID:consulo,项目名称:consulo-apache-ant,代码行数:19,代码来源:GlobalAntConfiguration.java


示例3: onNewConfigurationCreated

import com.intellij.openapi.projectRoots.SdkTable; //导入依赖的package包/类
@Override
public void onNewConfigurationCreated(@NotNull RunConfiguration configuration)
{
	super.onNewConfigurationCreated(configuration);

	JavaEEConfigurationImpl javaEEConfiguration = (JavaEEConfigurationImpl) configuration;

	JavaeeServerModel serverModel = (JavaeeServerModel) javaEEConfiguration.getServerModel();

	Sdk sdk = SdkTable.getInstance().findMostRecentSdkOfType(myBundleType);
	if(sdk != null)
	{
		javaEEConfiguration.APPLICATION_SERVER_NAME = sdk.getName();
	}

	serverModel.onNewConfigurationCreated();
}
 
开发者ID:consulo,项目名称:consulo-javaee,代码行数:18,代码来源:JavaEEConfigurationFactoryImpl.java


示例4: closeAndDeleteProject

import com.intellij.openapi.projectRoots.SdkTable; //导入依赖的package包/类
@RequiredWriteAction
public static synchronized void closeAndDeleteProject() {
  if (ourProject != null) {
    ApplicationManager.getApplication().assertWriteAccessAllowed();
    for (Sdk registeredSdk : ourRegisteredSdks) {
      SdkTable.getInstance().removeSdk(registeredSdk);
    }
    ((ProjectImpl)ourProject).setTemporarilyDisposed(false);
    final VirtualFile projFile = ((ProjectEx)ourProject).getStateStore().getProjectFile();
    final File projectFile = projFile == null ? null : VfsUtilCore.virtualToIoFile(projFile);
    if (!ourProject.isDisposed()) Disposer.dispose(ourProject);

    if (projectFile != null) {
      FileUtil.delete(projectFile);
    }
    ourProject = null;
  }
}
 
开发者ID:consulo,项目名称:consulo,代码行数:19,代码来源:LightPlatformTestCase.java


示例5: initComponent

import com.intellij.openapi.projectRoots.SdkTable; //导入依赖的package包/类
@Override
public void initComponent() {
  if (SystemProperties.is("consulo.disable.predefined.bundles")) {
    return;
  }

  Consumer<SdkImpl> consumer = new Consumer<SdkImpl>() {
    @Override
    @RequiredDispatchThread
    public void consume(final SdkImpl sdk) {
      ApplicationManager.getApplication().runWriteAction(() -> {
        sdk.setPredefined(true);
        SdkTable.getInstance().addSdk(sdk);
      });
    }
  };

  for (PredefinedBundlesProvider predefinedBundlesProvider : PredefinedBundlesProvider.EP_NAME.getExtensions()) {
    try {
      predefinedBundlesProvider.createBundles(consumer);
    }
    catch (Throwable e) {
      LOGGER.error(e);
    }
  }
}
 
开发者ID:consulo,项目名称:consulo,代码行数:27,代码来源:PredefinedBundlesLoader.java


示例6: createAndAddSDK

import com.intellij.openapi.projectRoots.SdkTable; //导入依赖的package包/类
/**
 * Tries to create an SDK identified by path; if successful, add the SDK to the global SDK table.
 *
 * @param path    identifies the SDK
 * @param sdkType
 * @param predefined
 * @return newly created SDK, or null.
 */
@Nullable
public static Sdk createAndAddSDK(final String path, SdkType sdkType, boolean predefined) {
  VirtualFile sdkHome = ApplicationManager.getApplication().runWriteAction(new Computable<VirtualFile>() {
    @Override
    public VirtualFile compute() {
      return LocalFileSystem.getInstance().refreshAndFindFileByPath(path);
    }
  });
  if (sdkHome != null) {
    final Sdk newSdk = setupSdk(SdkTable.getInstance().getAllSdks(), sdkHome, sdkType, true, predefined, null, null);
    if (newSdk != null) {
      addSdk(newSdk);
    }
    return newSdk;
  }
  return null;
}
 
开发者ID:consulo,项目名称:consulo,代码行数:26,代码来源:SdkConfigurationUtil.java


示例7: selectSdkHome

import com.intellij.openapi.projectRoots.SdkTable; //导入依赖的package包/类
public static void selectSdkHome(final SdkType sdkType, @Nonnull final Consumer<String> consumer) {
  final FileChooserDescriptor descriptor = sdkType.getHomeChooserDescriptor();
  if (ApplicationManager.getApplication().isUnitTestMode()) {
    Sdk sdk = SdkTable.getInstance().findMostRecentSdkOfType(sdkType);
    if (sdk == null) throw new RuntimeException("No SDK of type " + sdkType + " found");
    consumer.consume(sdk.getHomePath());
    return;
  }
  FileChooser.chooseFiles(descriptor, null, getSuggestedSdkPath(sdkType), new Consumer<List<VirtualFile>>() {
    @Override
    public void consume(final List<VirtualFile> chosen) {
      final String path = chosen.get(0).getPath();
      if (sdkType.isValidSdkHome(path)) {
        consumer.consume(path);
        return;
      }

      final String adjustedPath = sdkType.adjustSelectedSdkHome(path);
      if (sdkType.isValidSdkHome(adjustedPath)) {
        consumer.consume(adjustedPath);
      }
    }
  });
}
 
开发者ID:consulo,项目名称:consulo,代码行数:25,代码来源:SdkConfigurationUtil.java


示例8: findJdk

import com.intellij.openapi.projectRoots.SdkTable; //导入依赖的package包/类
@Nullable
private static Sdk findJdk(@NotNull JavaSdkVersion version)
{
	JavaSdk javaSdk = JavaSdk.getInstance();
	List<Sdk> javaSdks = SdkTable.getInstance().getSdksOfType(javaSdk);
	Sdk candidate = null;
	for(Sdk sdk : javaSdks)
	{
		JavaSdkVersion v = javaSdk.getVersion(sdk);
		if(v == version)
		{
			return sdk;
		}
		else if(candidate == null && v != null && version.getMaxLanguageLevel().isAtLeast(version.getMaxLanguageLevel()))
		{
			candidate = sdk;
		}
	}
	return candidate;
}
 
开发者ID:consulo,项目名称:consulo-java,代码行数:21,代码来源:JavaProjectDataService.java


示例9: getJdkRoot

import com.intellij.openapi.projectRoots.SdkTable; //导入依赖的package包/类
@Nullable
private static String getJdkRoot(JrePathEditor pathEditor, Module module)
{
	if(!pathEditor.isAlternativeJreSelected() && module != null)
	{
		Sdk sdk = ModuleUtilCore.getSdk(module, JavaModuleExtension.class);
		return sdk != null ? sdk.getHomePath() : null;
	}
	String jrePathOrName = pathEditor.getJrePathOrName();
	if(jrePathOrName != null)
	{
		Sdk configuredJdk = SdkTable.getInstance().findSdk(jrePathOrName);
		if(configuredJdk != null)
		{
			return configuredJdk.getHomePath();
		}
		else
		{
			return jrePathOrName;
		}
	}
	return null;
}
 
开发者ID:consulo,项目名称:consulo-java,代码行数:24,代码来源:ShortenCommandLineModeCombo.java


示例10: createAlternativeJdk

import com.intellij.openapi.projectRoots.SdkTable; //导入依赖的package包/类
private static Sdk createAlternativeJdk(@NotNull String jreHome) throws CantRunException
{
	final Sdk configuredJdk = SdkTable.getInstance().findSdk(jreHome);
	if(configuredJdk != null)
	{
		return configuredJdk;
	}

	if(!OwnJdkUtil.checkForJre(jreHome))
	{
		throw new CantRunException(JavaExecutionBundle.message("jre.path.is.not.valid.jre.home.error.message", jreHome));
	}

	final JavaSdk javaSdk = JavaSdk.getInstance();
	return javaSdk.createJdk(ObjectUtil.notNull(javaSdk.getVersionString(jreHome), ""), jreHome);
}
 
开发者ID:consulo,项目名称:consulo-java,代码行数:17,代码来源:JavaParametersUtil.java


示例11: checkVirtualMachineVersion

import com.intellij.openapi.projectRoots.SdkTable; //导入依赖的package包/类
private void checkVirtualMachineVersion(VirtualMachine vm)
{
	final String version = vm.version();
	if("1.4.0".equals(version))
	{
		DebuggerInvocationUtil.swingInvokeLater(myProject, () -> Messages.showMessageDialog(myProject, DebuggerBundle.message("warning.jdk140.unstable"), DebuggerBundle.message("title.jdk140" +
				".unstable"), Messages.getWarningIcon()));
	}

	if(getSession().getAlternativeJre() == null)
	{
		Sdk runjre = getSession().getRunJre();
		if((runjre == null || runjre.getSdkType() instanceof JavaSdkType) && !versionMatch(runjre, version))
		{
			SdkTable.getInstance().getSdksOfType(JavaSdk.getInstance()).stream().filter(sdk -> versionMatch(sdk, version)).findFirst().ifPresent(sdk ->
			{
				XDebugSessionImpl.NOTIFICATION_GROUP.createNotification(DebuggerBundle.message("message.remote.jre.version.mismatch", version, runjre != null ? runjre.getVersionString() :
						"unknown", sdk.getName()), MessageType.INFO).notify(myProject);
				getSession().setAlternativeJre(sdk);
			});
		}
	}
}
 
开发者ID:consulo,项目名称:consulo-java,代码行数:24,代码来源:DebugProcessImpl.java


示例12: getState

import com.intellij.openapi.projectRoots.SdkTable; //导入依赖的package包/类
@Nullable
@Override
public RunProfileState getState(@NotNull Executor executor, @NotNull final ExecutionEnvironment executionEnvironment) throws ExecutionException
{
	Module module = getConfigurationModule().getModule();
	if(module == null)
	{
		throw new ExecutionException("Module is not set for run configuration");
	}

	Sdk targetSdk;
	if(myUseAlternativeBundle)
	{
		if(StringUtil.isEmpty(myAlternativeBundleName))
		{
			throw new ExecutionException("NodeJS alternative bundle is empty");
		}

		targetSdk = SdkTable.getInstance().findSdk(myAlternativeBundleName);
		if(targetSdk == null)
		{
			throw new ExecutionException("NodeJS alternative bundle '" + myAlternativeBundleName + "' is not found");
		}
	}
	else
	{
		targetSdk = ModuleUtilCore.getSdk(module, NodeJSModuleExtension.class);
		if(targetSdk == null)
		{
			throw new ExecutionException("NodeJS bundle is undefined in module '" + module.getName() + "'");
		}
	}

	return createRunState(module, targetSdk, executor, executionEnvironment);
}
 
开发者ID:consulo,项目名称:consulo-nodejs,代码行数:36,代码来源:NodeJSConfigurationBase.java


示例13: ExecutionTab

import com.intellij.openapi.projectRoots.SdkTable; //导入依赖的package包/类
public ExecutionTab(final GlobalAntConfiguration antConfiguration, @NotNull final Project project)
{
	myAntGlobalConfiguration = antConfiguration;
	myAntCommandLine.attachLabel(myAntCmdLineLabel);
	myAntCommandLine.setDialogCaption(AntBundle.message("run.execution.tab.ant.command.line.dialog.title"));
	setLabelFor(myJDKLabel, myJDKs);

	myJDKsController = new ChooseAndEditComboBoxController<Sdk, String>(myJDKs, new Convertor<Sdk, String>()
	{
		@Override
		public String convert(Sdk jdk)
		{
			return jdk != null ? jdk.getName() : "";
		}
	}, String.CASE_INSENSITIVE_ORDER)
	{
		@Override
		public Iterator<Sdk> getAllListItems()
		{
			List<Sdk> sdksOfType = SdkTable.getInstance().getSdksOfType(JavaSdk.getInstance());
			List<Sdk> controller = new ArrayList<Sdk>(sdksOfType);
			controller.add(0, null);
			return controller.iterator();
		}

		@Override
		public Sdk openConfigureDialog(Sdk jdk, JComponent parent)
		{
			SingleSdkEditor editor = new SingleSdkEditor(jdk, myJDKs.getComboBox());
			editor.show();
			return editor.getSelectedSdk();
		}
	};

	UIPropertyBinding.Composite binding = getBinding();
	binding.bindString(myAntCommandLine.getTextField(), AntBuildFileImpl.ANT_COMMAND_LINE_PARAMETERS);
	binding.bindString(myJDKs.getComboBox(), AntBuildFileImpl.CUSTOM_JDK_NAME);
	binding.addBinding(new RunWithAntBinding(myUseDefaultAnt, myUseCastomAnt, myAnts, myAntGlobalConfiguration));
}
 
开发者ID:consulo,项目名称:consulo-apache-ant,代码行数:40,代码来源:BuildFilePropertiesPanel.java


示例14: addSdk

import com.intellij.openapi.projectRoots.SdkTable; //导入依赖的package包/类
public static void addSdk(@Nonnull final Sdk sdk) {
  ApplicationManager.getApplication().runWriteAction(new Runnable() {
    @Override
    public void run() {
      SdkTable.getInstance().addSdk(sdk);
    }
  });
}
 
开发者ID:consulo,项目名称:consulo,代码行数:9,代码来源:SdkConfigurationUtil.java


示例15: removeSdk

import com.intellij.openapi.projectRoots.SdkTable; //导入依赖的package包/类
public static void removeSdk(final Sdk sdk) {
  ApplicationManager.getApplication().runWriteAction(new Runnable() {
    @Override
    public void run() {
      SdkTable.getInstance().removeSdk(sdk);
    }
  });
}
 
开发者ID:consulo,项目名称:consulo,代码行数:9,代码来源:SdkConfigurationUtil.java


示例16: getDefaultSdk

import com.intellij.openapi.projectRoots.SdkTable; //导入依赖的package包/类
private static synchronized Sdk getDefaultSdk()
{
	if(ourDefaultSdk == null)
	{
		final String jdkHome = SystemProperties.getJavaHome();
		final String versionName = ProjectBundle.message("sdk.java.name.template", SystemProperties.getJavaVersion());
		Sdk sdk = SdkTable.getInstance().createSdk(versionName, new SimpleJavaSdkType());
		SdkModificator modificator = sdk.getSdkModificator();
		modificator.setHomePath(jdkHome);
		modificator.commitChanges();
		ourDefaultSdk = sdk;
	}

	return ourDefaultSdk;
}
 
开发者ID:consulo,项目名称:consulo-xslt,代码行数:16,代码来源:XsltRunConfiguration.java


示例17: getEffectiveJDK

import com.intellij.openapi.projectRoots.SdkTable; //导入依赖的package包/类
@Nullable
public Sdk getEffectiveJDK()
{
	if(!XsltRunSettingsEditor.ALLOW_CHOOSING_SDK)
	{
		return getDefaultSdk();
	}
	if(myJdkChoice == JdkChoice.JDK)
	{
		return myJdk != null ? SdkTable.getInstance().findSdk(myJdk) : null;
	}
	Sdk jdk = null;
	final Module module = getEffectiveModule();
	if(module != null)
	{
		ModuleRootManager moduleRootManager = ModuleRootManager.getInstance(module);
		ModuleExtension maybeJavaExtension = moduleRootManager.getExtension("java");
		if(maybeJavaExtension instanceof ModuleExtensionWithSdk)
		{
			jdk = ((ModuleExtensionWithSdk) maybeJavaExtension).getSdk();
		}
	}

	// EA-33419
	if(jdk == null || !(jdk.getSdkType() instanceof JavaSdkType))
	{
		return getDefaultSdk();
	}
	return jdk;
}
 
开发者ID:consulo,项目名称:consulo-xslt,代码行数:31,代码来源:XsltRunConfiguration.java


示例18: ClientJavaScriptModuleExtension

import com.intellij.openapi.projectRoots.SdkTable; //导入依赖的package包/类
public ClientJavaScriptModuleExtension(@NotNull String id, @NotNull ModuleRootLayer rootLayer)
{
	super(id, rootLayer);
	myPointer = new ModuleInheritableNamedPointerImpl<Sdk>(rootLayer, id)
	{
		@Nullable
		@Override
		public String getItemNameFromModule(@NotNull Module module)
		{
			ClientJavaScriptModuleExtension extension = ModuleUtilCore.getExtension(module, ClientJavaScriptModuleExtension.class);
			if(extension == null)
			{
				return null;
			}
			return extension.getSdkName();
		}

		@Nullable
		@Override
		public Sdk getItemFromModule(@NotNull Module module)
		{
			ClientJavaScriptModuleExtension extension = ModuleUtilCore.getExtension(module, ClientJavaScriptModuleExtension.class);
			if(extension == null)
			{
				return null;
			}
			return extension.getSdk();
		}

		@NotNull
		@Override
		public NamedPointer<Sdk> getPointer(@NotNull ModuleRootLayer moduleRootLayer, @NotNull String name)
		{
			return ((ModuleRootLayerImpl)moduleRootLayer).getRootModel().getConfigurationAccessor().getSdkPointer(name);
		}
	};

	Sdk sdkByType = SdkTable.getInstance().findPredefinedSdkByType(ClientJavaScriptSdkType.getInstance());
	myPointer.set(null, sdkByType);
}
 
开发者ID:consulo,项目名称:consulo-javascript,代码行数:41,代码来源:ClientJavaScriptModuleExtension.java


示例19: getTestJdk

import com.intellij.openapi.projectRoots.SdkTable; //导入依赖的package包/类
public static Sdk getTestJdk() {
  SdkTable sdkTable = SdkTable.getInstance();
  for (Sdk sdk : sdkTable.getAllSdks()) {
    if (sdk.isPredefined() && sdk.getSdkType() instanceof JavaSdk) {
      return sdk;
    }
  }
  return null;
}
 
开发者ID:consulo,项目名称:consulo-java,代码行数:10,代码来源:JavaTestUtil.java


示例20: AlternativeJREPanel

import com.intellij.openapi.projectRoots.SdkTable; //导入依赖的package包/类
public AlternativeJREPanel() {
  myCbEnabled = new JBCheckBox(ExecutionBundle.message("run.configuration.use.alternate.jre.checkbox"));

  myFieldWithHistory = new TextFieldWithHistory();
  final ArrayList<String> foundJDKs = new ArrayList<String>();
  final Sdk[] allJDKs = SdkTable.getInstance().getAllSdks();
  for (Sdk jdk : allJDKs) {
    foundJDKs.add(jdk.getHomePath());
  }
  myFieldWithHistory.setHistory(foundJDKs);
  myPathField = new ComponentWithBrowseButton<TextFieldWithHistory>(myFieldWithHistory, null);
  myPathField.addBrowseFolderListener(ExecutionBundle.message("run.configuration.select.alternate.jre.label"),
                                      ExecutionBundle.message("run.configuration.select.jre.dir.label"),
                                      null, BrowseFilesListener.SINGLE_DIRECTORY_DESCRIPTOR,
                                      TextComponentAccessor.TEXT_FIELD_WITH_HISTORY_WHOLE_TEXT);

  setLayout(new MigLayout("ins 0, gap 10, fill, flowx"));
  add(myCbEnabled, "shrinkx");
  add(myPathField, "growx, pushx");

  InsertPathAction.addTo(myFieldWithHistory.getTextEditor());

  myCbEnabled.addActionListener(new ActionListener() {
    public void actionPerformed(ActionEvent e) {
      enabledChanged();
    }
  });
  enabledChanged();

  setAnchor(myCbEnabled);

  updateUI();
}
 
开发者ID:consulo,项目名称:consulo-java,代码行数:34,代码来源:AlternativeJREPanel.java



注:本文中的com.intellij.openapi.projectRoots.SdkTable类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Java DcMotorSimple类代码示例发布时间:2022-05-22
下一篇:
Java BaseElement类代码示例发布时间:2022-05-22
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap