当前位置: 首页>>代码示例>>Java>>正文


Java IProjectDescription.getNatureIds方法代码示例

本文整理汇总了Java中org.eclipse.core.resources.IProjectDescription.getNatureIds方法的典型用法代码示例。如果您正苦于以下问题:Java IProjectDescription.getNatureIds方法的具体用法?Java IProjectDescription.getNatureIds怎么用?Java IProjectDescription.getNatureIds使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在org.eclipse.core.resources.IProjectDescription的用法示例。


在下文中一共展示了IProjectDescription.getNatureIds方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: addAsMainNature

import org.eclipse.core.resources.IProjectDescription; //导入方法依赖的package包/类
public static void addAsMainNature(IProject project, String natureID, IProgressMonitor monitor) throws CoreException{
	if (monitor != null && monitor.isCanceled()) {
		throw new OperationCanceledException();
	}
	if (!project.hasNature(natureID)) {
		IProjectDescription description = project.getDescription();
		String[] natures = description.getNatureIds();
		String[] newNatures = new String[natures.length + 1];
		System.arraycopy(natures, 0, newNatures, 1, natures.length);
		newNatures[0] = natureID;
		description.setNatureIds(newNatures);
		project.setDescription(description, null);
	} else {
		if (monitor != null) {
			monitor.worked(1);
		}
	}
}
 
开发者ID:eclipse,项目名称:gemoc-studio-modeldebugging,代码行数:19,代码来源:AddRemoveGemocSequentialLanguageNatureHandler.java

示例2: removeGW4ENature

import org.eclipse.core.resources.IProjectDescription; //导入方法依赖的package包/类
/**
 * Remove the GW4E nature from this project This remove the nature
 * and the GraphWalker libraries from its classpath
 * 
 * @param project
 */
public static void removeGW4ENature(IProject project) {
	try {
		IProjectDescription description = project.getDescription();
		List<String> newNatures = new ArrayList<String>();
		for (String natureId : description.getNatureIds()) {
			if (!NATURE_ID.equals(natureId)) {
				newNatures.add(natureId);
			}
		}
		description.setNatureIds(newNatures.toArray(new String[newNatures.size()]));
		project.setDescription(description, null);
	} catch (CoreException e) {
		ResourceManager.logException(e);
		return;
	}
}
 
开发者ID:gw4e,项目名称:gw4e.project,代码行数:23,代码来源:GW4ENature.java

示例3: setGW4ENature

import org.eclipse.core.resources.IProjectDescription; //导入方法依赖的package包/类
/**
 * Set the GW4E Nature to the passed project
 * 
 * @param project
 * @return
 * @throws CoreException
 */
public static IStatus setGW4ENature(IProject project) throws CoreException {
	IProjectDescription description = project.getDescription();
	String[] natures = description.getNatureIds();
	String[] newNatures = new String[natures.length + 1];
	System.arraycopy(natures, 0, newNatures, 0, natures.length);

	// add our id
	newNatures[natures.length] = GW4ENature.NATURE_ID;

	// validate the natures
	IWorkspace workspace = ResourcesPlugin.getWorkspace();
	IStatus status = workspace.validateNatureSet(newNatures);

	if (status.getCode() == IStatus.OK) {
		description.setNatureIds(newNatures);
		project.setDescription(description, null);
	}
	return status;
}
 
开发者ID:gw4e,项目名称:gw4e.project,代码行数:27,代码来源:GW4ENature.java

示例4: hasNature

import org.eclipse.core.resources.IProjectDescription; //导入方法依赖的package包/类
/**
 * Test whether the project has the passed nature
 * 
 * @param receiver
 * @param nature
 * @return
 */
public static boolean hasNature(Object receiver, String nature) {
	IProject project = JDTManager.toJavaProject(receiver);
	if (project == null || !project.isOpen())
		return false;
	IProjectDescription description;
	try {
		description = project.getDescription();
	} catch (CoreException e) {
		ResourceManager.logException(e);
		return false;
	}
	String[] natures = description.getNatureIds();
	for (int i = 0; i < natures.length; i++) {
		if (nature.equalsIgnoreCase(natures[i]))
			return true;
	}
	return false;
}
 
开发者ID:gw4e,项目名称:gw4e.project,代码行数:26,代码来源:ResourceManager.java

示例5: activate

import org.eclipse.core.resources.IProjectDescription; //导入方法依赖的package包/类
public static void activate(IProject project) {
	try {
		IProjectDescription description = project.getDescription();
		String[] natures = description.getNatureIds();
		
		for (int i = 0; i < natures.length; ++i) {
			if (NATURE_ID.equals(natures[i])) {
				// already active
				return;
			}
		}
		// Add the nature
		String[] newNatures = new String[natures.length + 1];
		System.arraycopy(natures, 0, newNatures, 0, natures.length);
		newNatures[natures.length] = NATURE_ID;
		description.setNatureIds(newNatures);
		project.setDescription(description, null);
	} catch (CoreException e) {
	}
}
 
开发者ID:DarwinSPL,项目名称:DarwinSPL,代码行数:21,代码来源:DwprofileNature.java

示例6: deactivate

import org.eclipse.core.resources.IProjectDescription; //导入方法依赖的package包/类
public static void deactivate(IProject project) {
	try {
		IProjectDescription description = project.getDescription();
		String[] natures = description.getNatureIds();
		
		for (int i = 0; i < natures.length; ++i) {
			if (NATURE_ID.equals(natures[i])) {
				// Remove the nature
				String[] newNatures = new String[natures.length - 1];
				System.arraycopy(natures, 0, newNatures, 0, i);
				System.arraycopy(natures, i + 1, newNatures, i, natures.length - i - 1);
				description.setNatureIds(newNatures);
				project.setDescription(description, null);
				return;
			}
		}
	} catch (CoreException e) {
	}
}
 
开发者ID:DarwinSPL,项目名称:DarwinSPL,代码行数:20,代码来源:HymappingNature.java

示例7: addHybrisNature

import org.eclipse.core.resources.IProjectDescription; //导入方法依赖的package包/类
private void addHybrisNature(IProject project, IProgressMonitor monitor) throws CoreException {
	IProjectDescription description = project.getDescription();
	String[] natures = description.getNatureIds();

	for (int i = 0; i < natures.length; ++i) {
		if (HYBRIS_NATURE_ID.equals(natures[i])) {
			return;
		}
	}

	// Add the nature
	String[] newNatures = new String[natures.length + 1];
	System.arraycopy(natures, 0, newNatures, 0, natures.length);
	newNatures[natures.length] = HYBRIS_NATURE_ID;
	description.setNatureIds(newNatures);
	project.setDescription(description, monitor);
}
 
开发者ID:SAP,项目名称:hybris-commerce-eclipse-plugin,代码行数:18,代码来源:Importer.java

示例8: addNatureToProject

import org.eclipse.core.resources.IProjectDescription; //导入方法依赖的package包/类
private static void addNatureToProject(IProject proj, String natureId, IProgressMonitor monitor)
		throws CoreException {
	IProjectDescription description = proj.getDescription();
	String[] prevNatures = description.getNatureIds();
	String[] newNatures = new String[prevNatures.length + 1];
	System.arraycopy(prevNatures, 0, newNatures, 0, prevNatures.length);
	newNatures[prevNatures.length] = natureId;
	description.setNatureIds(newNatures);
	proj.setDescription(description, monitor);
}
 
开发者ID:gw4e,项目名称:gw4e.project,代码行数:11,代码来源:ProjectHelper.java

示例9: addNature

import org.eclipse.core.resources.IProjectDescription; //导入方法依赖的package包/类
public static void addNature(IProject project, String natureId) throws CoreException 
{
	IProjectDescription description = project.getDescription();
	String[] natures = description.getNatureIds();
	if (!project.hasNature(natureId)) 
	{
		String[] newNatures = new String[natures.length + 1];
		System.arraycopy(natures, 0, newNatures, 1, natures.length);
		newNatures[0] = natureId;
		description.setNatureIds(newNatures);
		project.setDescription(description, null);
	}
}
 
开发者ID:eclipse,项目名称:gemoc-studio,代码行数:14,代码来源:IProjectUtils.java

示例10: addNature

import org.eclipse.core.resources.IProjectDescription; //导入方法依赖的package包/类
private void addNature(IProject project) throws CoreException{
	if(!project.hasNature(ProjectNature.NATURE_ID)){
		IProjectDescription description = project.getDescription();
		String[] prevNatures = description.getNatureIds();
		String[] newNatures = new String[prevNatures.length + 3];
		System.arraycopy(prevNatures, 0, newNatures, 0, prevNatures.length);
		newNatures[prevNatures.length] = ProjectNature.NATURE_ID;
		newNatures[prevNatures.length + 1] = JavaCore.NATURE_ID;
		newNatures[prevNatures.length + 2] = ORG_ECLIPSE_M2E_CORE_MAVEN2_NATURE;

		// validate the natures
		IWorkspace workspace = ResourcesPlugin.getWorkspace();
		IStatus status = workspace.validateNatureSet(newNatures); 
		ICommand javaBuildCommand= description.newCommand();
		javaBuildCommand.setBuilderName("org.eclipse.jdt.core.javabuilder");
		ICommand mavenBuildCommand= description.newCommand();
		mavenBuildCommand.setBuilderName("org.eclipse.m2e.core.maven2Builder");
		ICommand[] iCommand = {javaBuildCommand, mavenBuildCommand};
		description.setBuildSpec(iCommand); 
		// only apply new nature, if the status is ok
		if (status.getCode() == IStatus.OK) {
			description.setNatureIds(newNatures);
			project.setDescription(description, null);
		}
		logger.debug("Project nature added"); 
	}
}
 
开发者ID:capitalone,项目名称:Hydrograph,代码行数:28,代码来源:ProjectStructureCreator.java

示例11: assertNatureIn

import org.eclipse.core.resources.IProjectDescription; //导入方法依赖的package包/类
private void assertNatureIn(IProject project) throws CoreException {
    IProjectDescription descriptions = project.getDescription();
    String[] natureIds = descriptions.getNatureIds();
    if (natureIds.length != 3) {
        Assert.fail("Not all natures found in project."); //$NON-NLS-1$
    }
 
    if (!natureIds[0].equals(ProjectNature.NATURE_ID) ||
    		!natureIds[1].equals(JavaCore.NATURE_ID) ||
    		!natureIds[2].endsWith("org.eclipse.m2e.core.maven2Nature")){
        Assert.fail("Required project natures not found in project."); //$NON-NLS-1$
    }
}
 
开发者ID:capitalone,项目名称:Hydrograph,代码行数:14,代码来源:TestProjectStructure.java

示例12: addNature

import org.eclipse.core.resources.IProjectDescription; //导入方法依赖的package包/类
public void addNature(IProject project) {
	try {
		IProjectDescription description = project.getDescription();
		String[] natures = description.getNatureIds();
		String[] newNatures = new String[natures.length + 1];
		System.arraycopy(natures, 0, newNatures, 0, natures.length);
		newNatures[natures.length] = XtextProjectHelper.NATURE_ID;
		description.setNatureIds(newNatures);
		project.setDescription(description, null);
	} catch (CoreException e) {
		e.printStackTrace();
	}
}
 
开发者ID:Yakindu,项目名称:solidity-ide,代码行数:14,代码来源:KickStartNewProjectAction.java

示例13: addNature

import org.eclipse.core.resources.IProjectDescription; //导入方法依赖的package包/类
public static void addNature(final IProject project, String nature, final IProgressMonitor progressMonitor)
		throws CoreException {
	IProjectDescription description = project.getDescription();
	String[] natures = description.getNatureIds();
	String[] newNatures = new String[natures.length + 1];
	System.arraycopy(natures, 0, newNatures, 0, natures.length);
	newNatures[natures.length] = nature;
	description.setNatureIds(newNatures);
	project.setDescription(description, progressMonitor);
}
 
开发者ID:occiware,项目名称:OCCI-Studio,代码行数:11,代码来源:WizardUtils.java

示例14: addNature

import org.eclipse.core.resources.IProjectDescription; //导入方法依赖的package包/类
private static void addNature(IProject project) throws CoreException {
	if (!project.hasNature(ProjectNature.NATURE_ID)) {
		IProjectDescription description = project.getDescription();
		String[] prevNature = description.getNatureIds();
		String[] newNatures = new String[prevNature.length + 1];
		System.arraycopy(prevNature, 0, newNatures, 0, prevNature.length);
		newNatures[prevNature.length] = ProjectNature.NATURE_ID;
		description.setNatureIds(newNatures);
		
		IProgressMonitor monitor = null;
		project.setDescription(description, monitor);
	}
}
 
开发者ID:Imhotup,项目名称:LibertyEiffel-Eclipse-Plugin,代码行数:14,代码来源:LEProjectSupport.java

示例15: addNature

import org.eclipse.core.resources.IProjectDescription; //导入方法依赖的package包/类
private static void addNature(IProject project, String nature) throws CoreException {
  if (!project.hasNature(nature)) {
    IProjectDescription description = project.getDescription();
    String[] prevNatures = description.getNatureIds();
    String[] newNatures = new String[prevNatures.length + 1];
    System.arraycopy(prevNatures, 0, newNatures, 0, prevNatures.length);
    newNatures[prevNatures.length] = nature;
    description.setNatureIds(newNatures);

    project.setDescription(description, null);
  }
}
 
开发者ID:bazelbuild,项目名称:eclipse,代码行数:13,代码来源:BazelProjectSupport.java


注:本文中的org.eclipse.core.resources.IProjectDescription.getNatureIds方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。