List of usage examples for org.eclipse.jdt.core IJavaProject setOption
void setOption(String optionName, String optionValue);
From source file:com.android.ide.eclipse.adt.internal.project.ProjectHelper.java
License:Open Source License
/** * Checks, and fixes if needed, the compiler compliance level, and the source compatibility * level/*from w ww.j a v a2 s . co m*/ * @param javaProject The Java project to check and fix. */ public static final void checkAndFixCompilerCompliance(IJavaProject javaProject) { Pair<Integer, String> result = checkCompilerCompliance(javaProject); if (result.getFirst().intValue() != COMPILER_COMPLIANCE_OK) { // setup the preferred compiler compliance level. javaProject.setOption(JavaCore.COMPILER_COMPLIANCE, AdtConstants.COMPILER_COMPLIANCE_PREFERRED); javaProject.setOption(JavaCore.COMPILER_SOURCE, AdtConstants.COMPILER_COMPLIANCE_PREFERRED); javaProject.setOption(JavaCore.COMPILER_CODEGEN_TARGET_PLATFORM, AdtConstants.COMPILER_COMPLIANCE_PREFERRED); // clean the project to make sure we recompile try { javaProject.getProject().build(IncrementalProjectBuilder.CLEAN_BUILD, new NullProgressMonitor()); } catch (CoreException e) { AdtPlugin.printErrorToConsole(javaProject.getProject(), "Project compiler settings changed. Clean your project."); } } }
From source file:com.android.ide.eclipse.adt.project.ProjectHelper.java
License:Open Source License
/** * Checks, and fixes if needed, the compiler compliance level, and the source compatibility * level/*from w ww . j ava 2 s . c om*/ * @param javaProject The Java project to check and fix. */ public static final void checkAndFixCompilerCompliance(IJavaProject javaProject) { if (checkCompilerCompliance(javaProject) != COMPILER_COMPLIANCE_OK) { // setup the preferred compiler compliance level. javaProject.setOption(JavaCore.COMPILER_COMPLIANCE, AndroidConstants.COMPILER_COMPLIANCE_PREFERRED); javaProject.setOption(JavaCore.COMPILER_SOURCE, AndroidConstants.COMPILER_COMPLIANCE_PREFERRED); javaProject.setOption(JavaCore.COMPILER_CODEGEN_TARGET_PLATFORM, AndroidConstants.COMPILER_COMPLIANCE_PREFERRED); // clean the project to make sure we recompile try { javaProject.getProject().build(IncrementalProjectBuilder.CLEAN_BUILD, new NullProgressMonitor()); } catch (CoreException e) { AdtPlugin.printErrorToConsole(javaProject.getProject(), "Project compiler settings changed. Clean your project."); } } }
From source file:com.android.ide.eclipse.mock.Mocks.java
License:Open Source License
public static IJavaProject createProject(IClasspathEntry[] entries, IPath outputLocation) throws Exception { IJavaProject javaProject = createMock(IJavaProject.class); final Capture<IClasspathEntry[]> capturedEntries = new Capture<IClasspathEntry[]>(); Capture<IPath> capturedOutput = new Capture<IPath>(); capturedEntries.setValue(entries);//from w w w . j a v a2 s.c o m capturedOutput.setValue(outputLocation); IProject project = createProject(); expect(javaProject.getProject()).andReturn(project).anyTimes(); expect(javaProject.getOutputLocation()).andReturn(capturedOutput.getValue()).anyTimes(); expect(javaProject.getRawClasspath()).andAnswer(new IAnswer<IClasspathEntry[]>() { @Override public IClasspathEntry[] answer() throws Throwable { return capturedEntries.getValue(); } }).anyTimes(); javaProject.setRawClasspath(capture(capturedEntries), isA(IProgressMonitor.class)); expectLastCall().anyTimes(); javaProject.setRawClasspath(capture(capturedEntries), capture(capturedOutput), isA(IProgressMonitor.class)); expectLastCall().anyTimes(); final Capture<String> capturedCompliance = new Capture<String>(); capturedCompliance.setValue("1.4"); final Capture<String> capturedSource = new Capture<String>(); capturedSource.setValue("1.4"); final Capture<String> capturedTarget = new Capture<String>(); capturedTarget.setValue("1.4"); expect(javaProject.getOption(JavaCore.COMPILER_COMPLIANCE, true)).andAnswer(new IAnswer<String>() { @Override public String answer() throws Throwable { return capturedCompliance.getValue(); } }); expect(javaProject.getOption(JavaCore.COMPILER_SOURCE, true)).andAnswer(new IAnswer<String>() { @Override public String answer() throws Throwable { return capturedSource.getValue(); } }); expect(javaProject.getOption(JavaCore.COMPILER_CODEGEN_TARGET_PLATFORM, true)) .andAnswer(new IAnswer<String>() { @Override public String answer() throws Throwable { return capturedTarget.getValue(); } }); javaProject.setOption(eq(JavaCore.COMPILER_COMPLIANCE), capture(capturedCompliance)); expectLastCall().anyTimes(); javaProject.setOption(eq(JavaCore.COMPILER_SOURCE), capture(capturedSource)); expectLastCall().anyTimes(); javaProject.setOption(eq(JavaCore.COMPILER_CODEGEN_TARGET_PLATFORM), capture(capturedTarget)); expectLastCall().anyTimes(); replay(javaProject); return javaProject; }
From source file:com.buglabs.dragonfly.ui.actions.ConvertProjectActionDelegate.java
License:Open Source License
public void run(IAction action) { Job job = new Job("Convert Project") { @Override/*w w w.j a va 2 s .c om*/ protected IStatus run(IProgressMonitor monitor) { try { IJavaProject jproj = JavaCore.create(project); jproj.setOption(JavaCore.COMPILER_PB_ASSERT_IDENTIFIER, JavaCore.WARNING); jproj.setOption(JavaCore.COMPILER_PB_ENUM_IDENTIFIER, JavaCore.WARNING); IClasspathEntry[] importCP = jproj.getRawClasspath(); List cpl = new ArrayList(); IClasspathEntry jre = JavaCore.newContainerEntry(JavaRuntime.newDefaultJREContainerPath()); IClasspathEntry pde = JavaCore .newContainerEntry(new Path("org.eclipse.pde.core.requiredPlugins")); for (int i = 0; i < importCP.length; ++i) { String cpName = importCP[i].getPath().toString(); if (cpName.equals("com.buglabs.osgi.concierge.jdt.ConciergeClasspathContainerInitializer") || cpName.equals("com.buglabs.phoneme.personal.PhoneMEClasspathContainer") || cpName.equals( "com.buglabs.osgi.concierge.jdt.OSGiBundleClassPathContainerInitializer") || cpName.equals("org.eclipse.jdt.launching.JRE_CONTAINER")) { if (!cpl.contains(jre)) { cpl.add(jre); } if (!cpl.contains(pde)) { cpl.add(pde); } } else { System.out.println(cpName); cpl.add(importCP[i]); } } jproj.setRawClasspath((IClasspathEntry[]) cpl.toArray(new IClasspathEntry[cpl.size()]), monitor); ConciergeUtils.addNatureToProject(project, "org.eclipse.pde.PluginNature", monitor); ConciergeUtils.removeNatureFromProject(project, "com.buglabs.osgi.concierge.natures.ConciergeProjectNature", monitor); project.build(IncrementalProjectBuilder.CLEAN_BUILD, monitor); return Status.OK_STATUS; } catch (Exception e) { return new Status(IStatus.ERROR, Activator.PLUGIN_ID, "Unable to convert BUG project.", e); } } }; job.schedule(); }
From source file:com.buglabs.dragonfly.ui.jobs.CreateBUGProjectJob.java
License:Open Source License
protected void execute(IProgressMonitor monitor) throws CoreException, InvocationTargetException, InterruptedException { IWorkspaceRoot wsroot = ResourcesPlugin.getWorkspace().getRoot(); IProject proj = wsroot.getProject(projInfo.getProjectName()); proj.create(monitor);/*w w w . jav a 2 s .co m*/ proj.open(monitor); addNatures(proj, monitor); createBinFolder(proj, monitor); createSrcFolder(proj, monitor); setProjectClassPath(proj, monitor); createManifest(proj, monitor); if (projInfo.isGenerateActivator()) { generateActivator(monitor); } // Set the java version for BUG jvm compatibility IJavaProject jproj = JavaCore.create(getProject()); setJava16Options(jproj); jproj.setOption(JavaCore.COMPILER_PB_ASSERT_IDENTIFIER, JavaCore.WARNING); jproj.setOption(JavaCore.COMPILER_PB_ENUM_IDENTIFIER, JavaCore.WARNING); if (getBugProjectInfo().getOSGiServices().size() > 0 || getBugProjectInfo().getModuleServices().size() > 0) { if (getBugProjectInfo().isGenerateSeparateApplicationClass()) { createApplication(monitor); } } }
From source file:com.buglabs.dragonfly.ui.jobs.CreateBUGProjectJob.java
License:Open Source License
/** * Set java project options for using Java 1.6 Called if user selected Java * 1.6 on app creation// w w w .j ava 2 s .c om * * @param jproj */ private void setJava16Options(IJavaProject jproj) { jproj.setOption(JavaCore.COMPILER_COMPLIANCE, JavaCore.VERSION_1_6); jproj.setOption(JavaCore.COMPILER_SOURCE, JavaCore.VERSION_1_6); jproj.setOption(JavaCore.COMPILER_CODEGEN_TARGET_PLATFORM, JavaCore.VERSION_1_6); }
From source file:com.mtcflow.project.util.MTCProjectSupport.java
License:Open Source License
/** * For this marvelous project we need to: - create the default Eclipse * project - add the custom project nature - create the folder structure * /*w ww . j a v a 2s. c om*/ * @param projectName * @param location * @param natureId * @return */ public static IProject createProject(String projectName, URI location) { Assert.isNotNull(projectName); Assert.isTrue(projectName.trim().length() > 0); try { // create eclipse project IProject project = createBaseProject(projectName, location); project.setDefaultCharset("UTF-8", null); addNature(project); // create java project IJavaProject javaProject = JavaCore.create(project); javaProject.setOption(JavaCore.COMPILER_SOURCE, JavaCore.VERSION_1_5); javaProject.setOption(JavaCore.COMPILER_CODEGEN_TARGET_PLATFORM, JavaCore.VERSION_1_5); javaProject.setOption(JavaCore.COMPILER_COMPLIANCE, JavaCore.VERSION_1_5); // add bin/ouput folder IFolder binFolder = project.getFolder("bin"); // binFolder.create(false, true, null); javaProject.setOutputLocation(binFolder.getFullPath(), null); // add libs to project class path List<IClasspathEntry> entries = new ArrayList<IClasspathEntry>(); IVMInstall vmInstall = JavaRuntime.getDefaultVMInstall(); // create source folder IFolder sourceFolder = project.getFolder("src"); sourceFolder.create(false, true, null); IPackageFragmentRoot srcRoot = javaProject.getPackageFragmentRoot(sourceFolder); IClasspathEntry[] cEntries = new IClasspathEntry[3]; cEntries[0] = JavaRuntime.getDefaultJREContainerEntry(); // cEntries[2] = JavaCore.new cEntries[1] = JavaCore.newSourceEntry(srcRoot.getPath()); cEntries[2] = JavaCore.newContainerEntry(new Path("org.eclipse.pde.core.requiredPlugins")); javaProject.setRawClasspath(cEntries, null); /* * Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: * LePlugine Bundle-SymbolicName: LePlugine Bundle-Version: * 1.0.0.qualifier Bundle-RequiredExecutionEnvironment: JavaSE-1.7 */ String[] paths = { "transformations/T2M", //$NON-NLS-1$ "transformations/M2M", //$NON-NLS-1$ "transformations/M2T", //$NON-NLS-1$ "transformations/HOT", //$NON-NLS-1$ "mtcs", //$NON-NLS-1$ "metamodels", //$NON-NLS-1$ "libraries", //$NON-NLS-1$ "scripts", //$NON-NLS-1$ "validations", //$NON-NLS-1$ "tests", //$NON-NLS-1$ "models", "META-INF" }; //$NON-NLS-1$ addToProjectStructure(javaProject.getProject(), paths); createTemplateFileInProjectAt(javaProject.getProject(), "build.properties", "build.properties"); createTemplateFileInProjectAt(javaProject.getProject(), "default.mtc", "/mtcs/default.mtc"); createTemplateFileInProjectAt(javaProject.getProject(), "default_diagram.mtcd", "/mtcs/default.mtcd"); Manifest manifest = new Manifest(); manifest.getMainAttributes().putValue("Manifest-Version", "1.0"); manifest.getMainAttributes().putValue("Bundle-ManifestVersion", "2"); manifest.getMainAttributes().putValue("Bundle-Name", projectName); manifest.getMainAttributes().putValue("Bundle-SymbolicName", projectName); manifest.getMainAttributes().putValue("Bundle-Version", "1.0.0"); manifest.getMainAttributes().putValue("Require-Bundle", "com.mtcflow.model,com.mtcflow.engine,com.mtcflow.engine.core"); ByteArrayOutputStream out = new ByteArrayOutputStream(); manifest.write(out); javaProject.getProject().getFile("/META-INF/MANIFEST.MF") .create(new ByteArrayInputStream(out.toByteArray()), true, null); return javaProject.getProject(); } catch (Exception ex) { ex.printStackTrace(); throw new RuntimeException("Error creating the project", ex); } }
From source file:edu.brown.cs.bubbles.bedrock.BedrockProject.java
License:Open Source License
void localEditProject(Element pxml, IvyXmlWriter xw) throws BedrockException { String pnm = IvyXml.getAttrString(pxml, "NAME"); IProject ip = findProject(pnm);/* ww w . j a v a2s . c o m*/ IJavaProject ijp = JavaCore.create(ip); List<IClasspathEntry> ents = new ArrayList<IClasspathEntry>(); try { for (Element oe : IvyXml.children(pxml, "OPTION")) { String k = IvyXml.getAttrString(oe, "NAME"); String v = IvyXml.getAttrString(oe, "VALUE"); if (k.startsWith("edu.brown.cs.bubbles.bedrock.")) { String sfx = k.substring(29); QualifiedName qn = new QualifiedName("edu.brown.cs.bubbles.bedrock", sfx); try { ip.setPersistentProperty(qn, v); } catch (CoreException e) { BedrockPlugin.logD("Problem setting property " + qn + ": " + e); } } else ijp.setOption(k, v); } for (Element xe : IvyXml.children(pxml, "XPREF")) { String q = IvyXml.getAttrString(xe, "NODE"); String k = IvyXml.getAttrString(xe, "KEY"); String v = IvyXml.getAttrString(xe, "VALUE"); IPreferencesService ps = Platform.getPreferencesService(); Preferences rn = ps.getRootNode(); Preferences qn = rn.node(q); qn.put(k, v); } for (IClasspathEntry cpe : ijp.getRawClasspath()) ents.add(cpe); for (Element pe : IvyXml.children(pxml, "PATH")) { updatePathElement(ents, pe); } IClasspathEntry[] enta = new IClasspathEntry[ents.size()]; enta = ents.toArray(enta); ijp.setRawClasspath(enta, new BedrockProgressMonitor(our_plugin, "Update Paths")); ijp.save(null, false); } catch (CoreException e) { throw new BedrockException("Problem editing project", e); } }
From source file:org.bonitasoft.studio.common.repository.core.CreateBonitaBPMProjectOperation.java
License:Open Source License
private void createJavaProject(final IProgressMonitor monitor) { monitor.subTask(Messages.initializingJavaProject); final IJavaProject javaProject = asJavaProject(); javaProject.setOption(JavaCore.COMPILER_COMPLIANCE, JavaCore.VERSION_1_7); javaProject.setOption(JavaCore.COMPILER_SOURCE, JavaCore.VERSION_1_7); javaProject.setOption(JavaCore.COMPILER_CODEGEN_TARGET_PLATFORM, JavaCore.VERSION_1_7); javaProject.setOption(JavaCore.CORE_JAVA_BUILD_INVALID_CLASSPATH, "ignore"); monitor.worked(1);//from www . j a va 2 s. com }
From source file:org.bonitasoft.studio.common.repository.Repository.java
License:Open Source License
protected void createJavaProject(IProject project) { monitorSubtask(Messages.initializingJavaProject); final IJavaProject javaProject = JavaCore.create(project); javaProject.setOption(JavaCore.COMPILER_COMPLIANCE, JavaCore.VERSION_1_6); javaProject.setOption(JavaCore.COMPILER_SOURCE, JavaCore.VERSION_1_6); javaProject.setOption(JavaCore.COMPILER_CODEGEN_TARGET_PLATFORM, JavaCore.VERSION_1_6); javaProject.setOption(JavaCore.CORE_JAVA_BUILD_INVALID_CLASSPATH, "ignore"); CompilerUtils.setCompilerLevel(project, SpecifiedVersion._18); monitorWorked(1);/*from w w w . ja v a 2s . co m*/ }