diff --git a/AUTHORS b/AUTHORS index 5246fde7..822c1161 100644 --- a/AUTHORS +++ b/AUTHORS @@ -19,6 +19,7 @@ Michiel Verheul Pascal Bihler Peter Grant Philipp Eichhorn +Philippe Charles Rabea Gransberger Reinier Zwitserloot Robbert Jan Grootjans diff --git a/src/core/lombok/javac/apt/LombokProcessor.java b/src/core/lombok/javac/apt/LombokProcessor.java index 26e16d32..247d0560 100644 --- a/src/core/lombok/javac/apt/LombokProcessor.java +++ b/src/core/lombok/javac/apt/LombokProcessor.java @@ -174,7 +174,10 @@ public class LombokProcessor extends AbstractProcessor { filerFileManagerField.setAccessible(true); filerFileManagerField.set(javacFiler, newFilerManager); - replaceFileManagerJdk9(context, newFilerManager); + if (lombok.javac.Javac.getJavaCompilerVersion() > 8 + && !lombok.javac.handlers.JavacHandlerUtil.inNetbeansCompileOnSave(context)) { + replaceFileManagerJdk9(context, newFilerManager); + } } } catch (Exception e) { throw Lombok.sneakyThrow(e); diff --git a/src/core/lombok/javac/handlers/JavacHandlerUtil.java b/src/core/lombok/javac/handlers/JavacHandlerUtil.java index f335cf94..570d1a7e 100644 --- a/src/core/lombok/javac/handlers/JavacHandlerUtil.java +++ b/src/core/lombok/javac/handlers/JavacHandlerUtil.java @@ -134,11 +134,16 @@ public class JavacHandlerUtil { return inNetbeansEditor(node.getContext()); } - private static boolean inNetbeansEditor(Context context) { + public static boolean inNetbeansEditor(Context context) { Options options = Options.instance(context); return (options.keySet().contains("ide") && !options.keySet().contains("backgroundCompilation")); } - + + public static boolean inNetbeansCompileOnSave(Context context) { + Options options = Options.instance(context); + return (options.keySet().contains("ide") && options.keySet().contains("backgroundCompilation")); + } + public static JCTree getGeneratedBy(JCTree node) { return JCTree_generatedNode.get(node); }