public static void setComplianceOptions(Map<String, String> map, String compliance) { JavaCore.setComplianceOptions(compliance, map); }
public static void setComplianceOptions(Map<String, String> map, String compliance) { JavaCore.setComplianceOptions(compliance, map); }
private void updateComplianceSettings(IJavaProject project, String compliance) { HashMap<String, String> defaultOptions= new HashMap<>(); JavaCore.setComplianceOptions(compliance, defaultOptions); Iterator<Map.Entry<String, String>> it= defaultOptions.entrySet().iterator(); while (it.hasNext()) { Entry<String, String> pair= it.next(); project.setOption(pair.getKey(), pair.getValue()); } } }
@Override public Void call() throws Exception { ASTParser parser = ASTParser.newParser(AST.JLS8); parser.setBindingsRecovery(false); parser.setResolveBindings(true); Map<String, String> options = JavaCore.getOptions(); JavaCore.setComplianceOptions(JavaCore.VERSION_1_8, options); // these options seem to slightly reduce the number of times that JDT aborts on compilation errors options.put(JavaCore.CORE_INCOMPLETE_CLASSPATH, "warning"); options.put(JavaCore.COMPILER_PB_ENUM_IDENTIFIER, "warning"); options.put(JavaCore.COMPILER_PB_FORBIDDEN_REFERENCE, "warning"); options.put(JavaCore.CORE_CIRCULAR_CLASSPATH, "warning"); options.put(JavaCore.COMPILER_PB_ASSERT_IDENTIFIER, "warning"); options.put(JavaCore.COMPILER_PB_NULL_SPECIFICATION_VIOLATION, "warning"); options.put(JavaCore.CORE_JAVA_BUILD_INVALID_CLASSPATH, "ignore"); options.put(JavaCore.COMPILER_PB_NULL_ANNOTATION_INFERENCE_CONFLICT, "warning"); options.put(JavaCore.CORE_OUTPUT_LOCATION_OVERLAPPING_ANOTHER_SOURCE, "warning"); options.put(JavaCore.CORE_JAVA_BUILD_DUPLICATE_RESOURCE, "warning"); parser.setCompilerOptions(options); parser.setEnvironment(libraryPaths.toArray(new String[libraryPaths.size()]), sourcePaths.toArray(new String[sourcePaths.size()]), null, true); parser.createASTs(batch.toArray(new String[batch.size()]), encodings, bindingKeys, requestor, null); return null; } });
/** * Get the compiler options. * * @return the compiler options. */ public Map<String, String> getCompilerOptions() { final Map<String, String> options = getOptions(); final String v = javaSERelease.getMajorVersion() + "." + javaSERelease.getMinorVersion(); setComplianceOptions(v, options); return options; }
JavaCore.setComplianceOptions(compliance, options); JavaCore.setOptions(options);
public void execute(FileASTRequestor storage) { for(List<String> partition : partitions) { ASTParser parser = ASTParser.newParser(AST.JLS8); parser.setResolveBindings(true); parser.setBindingsRecovery(true); Map<?, ?> options = JavaCore.getOptions(); JavaCore.setComplianceOptions(JavaCore.VERSION_1_8, options); parser.setCompilerOptions(options); parser.setEnvironment(null, srcDirs, null, true); parser.createASTs(partition.toArray(new String[partition.size()]), null, new String[0], storage, null); } } }
JavaCore.setComplianceOptions(complianceLevel, defaultComplianceOptions);
private static ASTParser buildAstParser(File srcFolder) { ASTParser parser = ASTParser.newParser(AST.JLS8); parser.setKind(ASTParser.K_COMPILATION_UNIT); Map options = JavaCore.getOptions(); JavaCore.setComplianceOptions(JavaCore.VERSION_1_8, options); parser.setCompilerOptions(options); parser.setResolveBindings(false); parser.setEnvironment(new String[0], new String[]{srcFolder.getPath()}, null, false); return parser; }
parser.setResolveBindings(true); Map options = JavaCore.getOptions(); JavaCore.setComplianceOptions(JavaCore.VERSION_1_8, options); parser.setCompilerOptions(options); String fileName = sourceFile.getFileName().toString();
public CKReport calculate(String path) { String[] srcDirs = FileUtils.getAllDirs(path); String[] javaFiles = FileUtils.getAllJavaFiles(path); log.info("Found " + javaFiles.length + " java files"); MetricsExecutor storage = new MetricsExecutor(() -> metrics()); List<List<String>> partitions = Lists.partition(Arrays.asList(javaFiles), MAX_AT_ONCE); log.info("Max partition size: " + MAX_AT_ONCE + ", total partitions=" + partitions.size()); for(List<String> partition : partitions) { log.info("Next partition"); ASTParser parser = ASTParser.newParser(AST.JLS8); parser.setResolveBindings(true); parser.setBindingsRecovery(true); Map<?, ?> options = JavaCore.getOptions(); JavaCore.setComplianceOptions(JavaCore.VERSION_1_8, options); parser.setCompilerOptions(options); parser.setEnvironment(null, srcDirs, null, true); parser.createASTs(partition.toArray(new String[partition.size()]), null, new String[0], storage, null); } log.info("Finished parsing"); CKReport report = storage.getReport(); extras.update(report); return report; }
protected final ASTParser createDefaultJavaParser(final String javaVersion) { ASTParser parser = null; final Hashtable<String, String> options = JavaCore.getOptions(); try { parser = ASTParser.newParser(ASTParserFactory.asJLS(javaVersion)); JavaCore.setComplianceOptions(javaVersion, options); } catch (final Throwable _t) { if (_t instanceof IllegalArgumentException) { parser = ASTParser.newParser(ASTParserFactory.asJLS(this.minParserApiLevel)); JavaCore.setComplianceOptions(this.minParserApiLevel, options); } else { throw Exceptions.sneakyThrow(_t); } } options.put(JavaCore.COMPILER_DOC_COMMENT_SUPPORT, JavaCore.ENABLED); parser.setCompilerOptions(options); parser.setStatementsRecovery(true); parser.setResolveBindings(true); parser.setBindingsRecovery(true); return parser; }
JavaCore.setComplianceOptions(compliance, options); JavaCore.setOptions(options);
private static ASTParser buildAstParser(String[] sourceFolders) { ASTParser parser = ASTParser.newParser(AST.JLS8); parser.setKind(ASTParser.K_COMPILATION_UNIT); Map options = JavaCore.getOptions(); JavaCore.setComplianceOptions(JavaCore.VERSION_1_8, options); parser.setCompilerOptions(options); parser.setResolveBindings(true); parser.setBindingsRecovery(true); parser.setEnvironment(new String[0], sourceFolders, null, true); //parser.setEnvironment(new String[0], new String[]{"tmp\\refactoring-toy-example\\src"}, null, false); return parser; }
JavaCore.setComplianceOptions(projectComplianceLevel, defaultComplianceOptions);
private CompilationUnit createAST(final String content, String unitName) { Document doc = new Document(content); final ASTParser parser = ASTParser.newParser(AST.JLS8); parser.setResolveBindings(true); parser.setKind(ASTParser.K_COMPILATION_UNIT); parser.setBindingsRecovery(true); parser.setStatementsRecovery(true); parser.setUnitName(unitName); Map<String, String> options = JavaCore.getOptions(); JavaCore.setComplianceOptions(JavaCore.VERSION_1_8, options); parser.setCompilerOptions(options); String[] sources = { inputArgs.getSourceFolder() }; parser.setEnvironment(null, sources, null, true); parser.setSource(doc.get().toCharArray()); CompilationUnit cu = (CompilationUnit) parser.createAST(null); if (!cu.getAST().hasBindingsRecovery()) { System.out.println("Binding not activated."); } return cu; }