From maurizio.cimadamore at oracle.com Fri May 1 12:23:58 2020 From: maurizio.cimadamore at oracle.com (Maurizio Cimadamore) Date: Fri, 1 May 2020 13:23:58 +0100 Subject: RFR: JDK-8242478: compiler implementation for records (Second Preview) In-Reply-To: <2cb970c0-4054-43af-4640-f991265da9cd@oracle.com> References: <2cb970c0-4054-43af-4640-f991265da9cd@oracle.com> Message-ID: Hi Vicente, good work - some comments below: * I think Tagir is right - consider code like this: void m() { ?? enum Foo { A, B }; } surely we want this to fail if you compile it w/o --enable-preview ? * Check.java "if (implicitlyStatic || (flags & STATIC) != 0) {" Don't you already have the "staticOrImplicitlyStatic" var for this? * Symbol.java Note that javac already has the capability of tracking if a type is a varargs type - see this code in Type.java public ArrayType makeVarargs() { ??????????? return new ArrayType(elemtype, tsym, metadata) { ??????????????? @Override ??????????????? public boolean isVarargs() { ??????????????????? return true; ??????????????? } ??????????? }; ??????? } In other words, from the element type, if you call 'makeVarargs' you will get a special ArrayType whose isVarargs() will return true. I think that could be used to drop the new boolean flag and make the code generally tighter. * Attr.java We already have a compiler diagnostic for when you try to override a method with weaker access: # 0: message segment, 1: set of flag or string compiler.err.override.weaker.access=\ ??? {0}\n\ ??? attempting to assign weaker access privileges; was {1} I think the wording for the new diagnostic for when you use stronger access could be borrowed from this one? (e.g. take the above diagnostic and replace weaker with stronger?) * LocalStaticDeclaration Since you are there, you might want to also add in the template some missing cases: * instance initializer * constructor * static method I know some of the underlying code is shared - but better be safe than sorry. Cheers Maurizio On 30/04/2020 16:10, Vicente Romero wrote: > Hi all, > > Please review the patch for the second preview of records at [1], the > bug entry is at [2] the related spec can be found at [3], the JEP is > at [4]. This patch implements the following changes: > > - local enums and interfaces, along with local records > - removed possibility of final modifier for record components > - removed requirement that canonical constructor must be public. Any > access modifier must provide at least as much access as the record > class. If a canonical constructor is implicitly declared, then its > access modifier is the same as the record class > - check that there is a iff relation between a varargs record > component and the corresponding parameter in the canonical constructor > so: > > ?? record R(int... i) { R(int... i) {...}} is allowed but: > ?? record R(int... i) { R(int[] i) {...}} is not > > - new case for using @Override annotation to declare that a method is > an accessor method for a record component > > These are the main changes, plus: > - there is one liner change to java.io.ObjectStreamClass, this is > related to the fact that now the canonical record don't necessarily > has to be public thus the use of Class::getDeclaredConstructor > - there is a one liner change concerning the flags of the generated > toString method, this is a bug fix, toString didn't have the same > flags as hashCode and equals > - I have added several tests to enforce other rules in the spec like > the one saying that in a compact constructor fields have to be > initialized in the same order in which the corresponding record > component has been declared, plus some additional tests > - test RecordCompilationTests is executed twice now, first in a mode > that is equivalent to the original test and then using an "empty" > annotation processor. This is because some regressions have been > discovered in the past when an annotation processor is present. I have > also made some changes to the libraries this test uses. > > Thanks, > Vicente > > [1] http://cr.openjdk.java.net/~vromero/8242478/webrev.00 > [2] https://bugs.openjdk.java.net/browse/JDK-8242478 > [3] > http://cr.openjdk.java.net/~gbierman/records2/20200428/specs/records-jls.html > [4] https://bugs.openjdk.java.net/browse/JDK-8242303 From vicente.romero at oracle.com Sun May 3 20:57:43 2020 From: vicente.romero at oracle.com (Vicente Romero) Date: Sun, 3 May 2020 16:57:43 -0400 Subject: RFR: JDK-8242478: compiler implementation for records (Second Preview) In-Reply-To: References: <2cb970c0-4054-43af-4640-f991265da9cd@oracle.com> Message-ID: <63ec67bb-94ba-4ed4-849c-c8d194c5f1bb@oracle.com> Hi Maurizio, Thanks for the review. I have published 3 webrevs [1] is the same as the previous review. I just added it again to avoid confusion on what the other delta reviews were based on. [2] is implementing a recent change in the records spec which forbids assignments to record fields inside of the compact constructor. [3] is the patch addressing your review comments. The application order is [1, 2, 3]. The latest spec is at [4]. There are also some comments inlined below, On 5/1/20 8:23 AM, Maurizio Cimadamore wrote: > Hi Vicente, > good work - some comments below: > > * I think Tagir is right - consider code like this: > > void m() { > ?? enum Foo { A, B }; > } > > surely we want this to fail if you compile it w/o --enable-preview ? right, I just read Tagir's mail too fast :|, good catch @Tagir! > > * Check.java > > "if (implicitlyStatic || (flags & STATIC) != 0) {" > > Don't you already have the "staticOrImplicitlyStatic" var for this? right done > > * Symbol.java > > Note that javac already has the capability of tracking if a type is a > varargs type - see this code in Type.java > > public ArrayType makeVarargs() { > ??????????? return new ArrayType(elemtype, tsym, metadata) { > ??????????????? @Override > ??????????????? public boolean isVarargs() { > ??????????????????? return true; > ??????????????? } > ??????????? }; > ??????? } > > In other words, from the element type, if you call 'makeVarargs' you > will get a special ArrayType whose isVarargs() will return true. I > think that could be used to drop the new boolean flag and make the > code generally tighter. I have removed the field and relied on invoking the isVarargs method on the type. > > * Attr.java > > We already have a compiler diagnostic for when you try to override a > method with weaker access: > > # 0: message segment, 1: set of flag or string > compiler.err.override.weaker.access=\ > ??? {0}\n\ > ??? attempting to assign weaker access privileges; was {1} > > I think the wording for the new diagnostic for when you use stronger > access could be borrowed from this one? (e.g. take the above > diagnostic and replace weaker with stronger?) sounds good, done > > * LocalStaticDeclaration > > Since you are there, you might want to also add in the template some > missing cases: > > * instance initializer > * constructor > * static method > > I know some of the underlying code is shared - but better be safe than > sorry. yep added. > > > Cheers > Maurizio > > Thanks, Vicente [1] http://cr.openjdk.java.net/~vromero/8242478/webrev.01/ [2] http://cr.openjdk.java.net/~vromero/8242478/webrev.01.forbid.field.assigment/ [3] http://cr.openjdk.java.net/~vromero/8242478/webrev.01.review.iteration/ [4] http://cr.openjdk.java.net/~gbierman/records2/20200501/specs/records-jls.html > On 30/04/2020 16:10, Vicente Romero wrote: >> Hi all, >> >> Please review the patch for the second preview of records at [1], the >> bug entry is at [2] the related spec can be found at [3], the JEP is >> at [4]. This patch implements the following changes: >> >> - local enums and interfaces, along with local records >> - removed possibility of final modifier for record components >> - removed requirement that canonical constructor must be public. Any >> access modifier must provide at least as much access as the record >> class. If a canonical constructor is implicitly declared, then its >> access modifier is the same as the record class >> - check that there is a iff relation between a varargs record >> component and the corresponding parameter in the canonical >> constructor so: >> >> ?? record R(int... i) { R(int... i) {...}} is allowed but: >> ?? record R(int... i) { R(int[] i) {...}} is not >> >> - new case for using @Override annotation to declare that a method is >> an accessor method for a record component >> >> These are the main changes, plus: >> - there is one liner change to java.io.ObjectStreamClass, this is >> related to the fact that now the canonical record don't necessarily >> has to be public thus the use of Class::getDeclaredConstructor >> - there is a one liner change concerning the flags of the generated >> toString method, this is a bug fix, toString didn't have the same >> flags as hashCode and equals >> - I have added several tests to enforce other rules in the spec like >> the one saying that in a compact constructor fields have to be >> initialized in the same order in which the corresponding record >> component has been declared, plus some additional tests >> - test RecordCompilationTests is executed twice now, first in a mode >> that is equivalent to the original test and then using an "empty" >> annotation processor. This is because some regressions have been >> discovered in the past when an annotation processor is present. I >> have also made some changes to the libraries this test uses. >> >> Thanks, >> Vicente >> >> [1] http://cr.openjdk.java.net/~vromero/8242478/webrev.00 >> [2] https://bugs.openjdk.java.net/browse/JDK-8242478 >> [3] >> http://cr.openjdk.java.net/~gbierman/records2/20200428/specs/records-jls.html >> [4] https://bugs.openjdk.java.net/browse/JDK-8242303 From jan.lahoda at oracle.com Mon May 4 14:21:07 2020 From: jan.lahoda at oracle.com (Jan Lahoda) Date: Mon, 4 May 2020 16:21:07 +0200 Subject: RFR: JDK-8242478: compiler implementation for records (Second Preview) In-Reply-To: <63ec67bb-94ba-4ed4-849c-c8d194c5f1bb@oracle.com> References: <2cb970c0-4054-43af-4640-f991265da9cd@oracle.com> <63ec67bb-94ba-4ed4-849c-c8d194c5f1bb@oracle.com> Message-ID: To me, looks reasonable. Some minor nits: -in JavacParser there is: + (allowRecords && !isRecordStart() || !allowRecords)) { I would find it more understandable, if it was written as: + (!allowRecords || !isRecordStart())) { -in tests like IllegalAnnotation.java, I would suggest to add an action that will run the test with the new semantics: * @compile --enable-preview -source ${jdk.version} IllegalAnnotation.java This should show both the behaviors, old and new, and it will be easier to find an adjust these tests when records go public (because then the test will start to fail, as it uses the newest source level. But then having two @compile actions would be good - one with an older source level and failing, and the other one with a new source level, passing). Jan On 03. 05. 20 22:57, Vicente Romero wrote: > Hi Maurizio, > > Thanks for the review. I have published 3 webrevs [1] is the same as the > previous review. I just added it again to avoid confusion on what the > other delta reviews were based on. [2] is implementing a recent change > in the records spec which forbids assignments to record fields inside of > the compact constructor. [3] is the patch addressing your review > comments. The application order is [1, 2, 3]. The latest spec is at [4]. > There are also some comments inlined below, > > On 5/1/20 8:23 AM, Maurizio Cimadamore wrote: >> Hi Vicente, >> good work - some comments below: >> >> * I think Tagir is right - consider code like this: >> >> void m() { >> ?? enum Foo { A, B }; >> } >> >> surely we want this to fail if you compile it w/o --enable-preview ? > > right, I just read Tagir's mail too fast :|, good catch @Tagir! > >> >> * Check.java >> >> "if (implicitlyStatic || (flags & STATIC) != 0) {" >> >> Don't you already have the "staticOrImplicitlyStatic" var for this? > > right done > >> >> * Symbol.java >> >> Note that javac already has the capability of tracking if a type is a >> varargs type - see this code in Type.java >> >> public ArrayType makeVarargs() { >> ??????????? return new ArrayType(elemtype, tsym, metadata) { >> ??????????????? @Override >> ??????????????? public boolean isVarargs() { >> ??????????????????? return true; >> ??????????????? } >> ??????????? }; >> ??????? } >> >> In other words, from the element type, if you call 'makeVarargs' you >> will get a special ArrayType whose isVarargs() will return true. I >> think that could be used to drop the new boolean flag and make the >> code generally tighter. > > I have removed the field and relied on invoking the isVarargs method on > the type. > >> >> * Attr.java >> >> We already have a compiler diagnostic for when you try to override a >> method with weaker access: >> >> # 0: message segment, 1: set of flag or string >> compiler.err.override.weaker.access=\ >> ??? {0}\n\ >> ??? attempting to assign weaker access privileges; was {1} >> >> I think the wording for the new diagnostic for when you use stronger >> access could be borrowed from this one? (e.g. take the above >> diagnostic and replace weaker with stronger?) > > sounds good, done > >> >> * LocalStaticDeclaration >> >> Since you are there, you might want to also add in the template some >> missing cases: >> >> * instance initializer >> * constructor >> * static method >> >> I know some of the underlying code is shared - but better be safe than >> sorry. > > yep added. > >> >> >> Cheers >> Maurizio >> >> > Thanks, > Vicente > > [1] http://cr.openjdk.java.net/~vromero/8242478/webrev.01/ > [2] > http://cr.openjdk.java.net/~vromero/8242478/webrev.01.forbid.field.assigment/ > > [3] http://cr.openjdk.java.net/~vromero/8242478/webrev.01.review.iteration/ > [4] > http://cr.openjdk.java.net/~gbierman/records2/20200501/specs/records-jls.html > >> On 30/04/2020 16:10, Vicente Romero wrote: >>> Hi all, >>> >>> Please review the patch for the second preview of records at [1], the >>> bug entry is at [2] the related spec can be found at [3], the JEP is >>> at [4]. This patch implements the following changes: >>> >>> - local enums and interfaces, along with local records >>> - removed possibility of final modifier for record components >>> - removed requirement that canonical constructor must be public. Any >>> access modifier must provide at least as much access as the record >>> class. If a canonical constructor is implicitly declared, then its >>> access modifier is the same as the record class >>> - check that there is a iff relation between a varargs record >>> component and the corresponding parameter in the canonical >>> constructor so: >>> >>> ?? record R(int... i) { R(int... i) {...}} is allowed but: >>> ?? record R(int... i) { R(int[] i) {...}} is not >>> >>> - new case for using @Override annotation to declare that a method is >>> an accessor method for a record component >>> >>> These are the main changes, plus: >>> - there is one liner change to java.io.ObjectStreamClass, this is >>> related to the fact that now the canonical record don't necessarily >>> has to be public thus the use of Class::getDeclaredConstructor >>> - there is a one liner change concerning the flags of the generated >>> toString method, this is a bug fix, toString didn't have the same >>> flags as hashCode and equals >>> - I have added several tests to enforce other rules in the spec like >>> the one saying that in a compact constructor fields have to be >>> initialized in the same order in which the corresponding record >>> component has been declared, plus some additional tests >>> - test RecordCompilationTests is executed twice now, first in a mode >>> that is equivalent to the original test and then using an "empty" >>> annotation processor. This is because some regressions have been >>> discovered in the past when an annotation processor is present. I >>> have also made some changes to the libraries this test uses. >>> >>> Thanks, >>> Vicente >>> >>> [1] http://cr.openjdk.java.net/~vromero/8242478/webrev.00 >>> [2] https://bugs.openjdk.java.net/browse/JDK-8242478 >>> [3] >>> http://cr.openjdk.java.net/~gbierman/records2/20200428/specs/records-jls.html >>> >>> [4] https://bugs.openjdk.java.net/browse/JDK-8242303 > From vicente.romero at oracle.com Mon May 4 19:53:06 2020 From: vicente.romero at oracle.com (Vicente Romero) Date: Mon, 4 May 2020 15:53:06 -0400 Subject: RFR: JDK-8242478: compiler implementation for records (Second Preview) In-Reply-To: References: <2cb970c0-4054-43af-4640-f991265da9cd@oracle.com> <63ec67bb-94ba-4ed4-849c-c8d194c5f1bb@oracle.com> Message-ID: <0bd31d93-b864-e793-8a50-fbc87d3b4424@oracle.com> Hi Jan, Thanks for your comments, I have created a small webrev addressing them. Please check it at [5] Vicente [5] http://cr.openjdk.java.net/~vromero/8242478/webrev.02.jan.comments/ On 5/4/20 10:21 AM, Jan Lahoda wrote: > To me, looks reasonable. Some minor nits: > -in JavacParser there is: > +??????????????? (allowRecords && !isRecordStart() || !allowRecords)) { > > I would find it more understandable, if it was written as: > +??????????????? (!allowRecords || !isRecordStart())) { > > -in tests like IllegalAnnotation.java, I would suggest to add an > action that will run the test with the new semantics: > * @compile --enable-preview -source ${jdk.version} IllegalAnnotation.java > > This should show both the behaviors, old and new, and it will be > easier to find an adjust these tests when records go public (because > then the test will start to fail, as it uses the newest source level. > But then having two @compile actions would be good - one with an older > source level and failing, and the other one with a new source level, > passing). > > Jan > > On 03. 05. 20 22:57, Vicente Romero wrote: >> Hi Maurizio, >> >> Thanks for the review. I have published 3 webrevs [1] is the same as >> the previous review. I just added it again to avoid confusion on what >> the other delta reviews were based on. [2] is implementing a recent >> change in the records spec which forbids assignments to record fields >> inside of the compact constructor. [3] is the patch addressing your >> review comments. The application order is [1, 2, 3]. The latest spec >> is at [4]. There are also some comments inlined below, >> >> On 5/1/20 8:23 AM, Maurizio Cimadamore wrote: >>> Hi Vicente, >>> good work - some comments below: >>> >>> * I think Tagir is right - consider code like this: >>> >>> void m() { >>> ?? enum Foo { A, B }; >>> } >>> >>> surely we want this to fail if you compile it w/o --enable-preview ? >> >> right, I just read Tagir's mail too fast :|, good catch @Tagir! >> >>> >>> * Check.java >>> >>> "if (implicitlyStatic || (flags & STATIC) != 0) {" >>> >>> Don't you already have the "staticOrImplicitlyStatic" var for this? >> >> right done >> >>> >>> * Symbol.java >>> >>> Note that javac already has the capability of tracking if a type is >>> a varargs type - see this code in Type.java >>> >>> public ArrayType makeVarargs() { >>> ??????????? return new ArrayType(elemtype, tsym, metadata) { >>> ??????????????? @Override >>> ??????????????? public boolean isVarargs() { >>> ??????????????????? return true; >>> ??????????????? } >>> ??????????? }; >>> ??????? } >>> >>> In other words, from the element type, if you call 'makeVarargs' you >>> will get a special ArrayType whose isVarargs() will return true. I >>> think that could be used to drop the new boolean flag and make the >>> code generally tighter. >> >> I have removed the field and relied on invoking the isVarargs method >> on the type. >> >>> >>> * Attr.java >>> >>> We already have a compiler diagnostic for when you try to override a >>> method with weaker access: >>> >>> # 0: message segment, 1: set of flag or string >>> compiler.err.override.weaker.access=\ >>> ??? {0}\n\ >>> ??? attempting to assign weaker access privileges; was {1} >>> >>> I think the wording for the new diagnostic for when you use stronger >>> access could be borrowed from this one? (e.g. take the above >>> diagnostic and replace weaker with stronger?) >> >> sounds good, done >> >>> >>> * LocalStaticDeclaration >>> >>> Since you are there, you might want to also add in the template some >>> missing cases: >>> >>> * instance initializer >>> * constructor >>> * static method >>> >>> I know some of the underlying code is shared - but better be safe >>> than sorry. >> >> yep added. >> >>> >>> >>> Cheers >>> Maurizio >>> >>> >> Thanks, >> Vicente >> >> [1] http://cr.openjdk.java.net/~vromero/8242478/webrev.01/ >> [2] >> http://cr.openjdk.java.net/~vromero/8242478/webrev.01.forbid.field.assigment/ >> >> [3] >> http://cr.openjdk.java.net/~vromero/8242478/webrev.01.review.iteration/ >> [4] >> http://cr.openjdk.java.net/~gbierman/records2/20200501/specs/records-jls.html >> >>> On 30/04/2020 16:10, Vicente Romero wrote: >>>> Hi all, >>>> >>>> Please review the patch for the second preview of records at [1], >>>> the bug entry is at [2] the related spec can be found at [3], the >>>> JEP is at [4]. This patch implements the following changes: >>>> >>>> - local enums and interfaces, along with local records >>>> - removed possibility of final modifier for record components >>>> - removed requirement that canonical constructor must be public. >>>> Any access modifier must provide at least as much access as the >>>> record class. If a canonical constructor is implicitly declared, >>>> then its access modifier is the same as the record class >>>> - check that there is a iff relation between a varargs record >>>> component and the corresponding parameter in the canonical >>>> constructor so: >>>> >>>> ?? record R(int... i) { R(int... i) {...}} is allowed but: >>>> ?? record R(int... i) { R(int[] i) {...}} is not >>>> >>>> - new case for using @Override annotation to declare that a method >>>> is an accessor method for a record component >>>> >>>> These are the main changes, plus: >>>> - there is one liner change to java.io.ObjectStreamClass, this is >>>> related to the fact that now the canonical record don't necessarily >>>> has to be public thus the use of Class::getDeclaredConstructor >>>> - there is a one liner change concerning the flags of the generated >>>> toString method, this is a bug fix, toString didn't have the same >>>> flags as hashCode and equals >>>> - I have added several tests to enforce other rules in the spec >>>> like the one saying that in a compact constructor fields have to be >>>> initialized in the same order in which the corresponding record >>>> component has been declared, plus some additional tests >>>> - test RecordCompilationTests is executed twice now, first in a >>>> mode that is equivalent to the original test and then using an >>>> "empty" annotation processor. This is because some regressions have >>>> been discovered in the past when an annotation processor is >>>> present. I have also made some changes to the libraries this test >>>> uses. >>>> >>>> Thanks, >>>> Vicente >>>> >>>> [1] http://cr.openjdk.java.net/~vromero/8242478/webrev.00 >>>> [2] https://bugs.openjdk.java.net/browse/JDK-8242478 >>>> [3] >>>> http://cr.openjdk.java.net/~gbierman/records2/20200428/specs/records-jls.html >>>> >>>> [4] https://bugs.openjdk.java.net/browse/JDK-8242303 >> From maurizio.cimadamore at oracle.com Tue May 5 15:08:56 2020 From: maurizio.cimadamore at oracle.com (Maurizio Cimadamore) Date: Tue, 5 May 2020 16:08:56 +0100 Subject: RFR: JDK-8242478: compiler implementation for records (Second Preview) In-Reply-To: <63ec67bb-94ba-4ed4-849c-c8d194c5f1bb@oracle.com> References: <2cb970c0-4054-43af-4640-f991265da9cd@oracle.com> <63ec67bb-94ba-4ed4-849c-c8d194c5f1bb@oracle.com> Message-ID: Looks good - a minor nit is that we have a golden file test for checking that enums in methods are not allowed, but we don't for other static constructs. Maurizio On 03/05/2020 21:57, Vicente Romero wrote: > Hi Maurizio, > > Thanks for the review. I have published 3 webrevs [1] is the same as > the previous review. I just added it again to avoid confusion on what > the other delta reviews were based on. [2] is implementing a recent > change in the records spec which forbids assignments to record fields > inside of the compact constructor. [3] is the patch addressing your > review comments. The application order is [1, 2, 3]. The latest spec > is at [4]. There are also some comments inlined below, > > On 5/1/20 8:23 AM, Maurizio Cimadamore wrote: >> Hi Vicente, >> good work - some comments below: >> >> * I think Tagir is right - consider code like this: >> >> void m() { >> ?? enum Foo { A, B }; >> } >> >> surely we want this to fail if you compile it w/o --enable-preview ? > > right, I just read Tagir's mail too fast :|, good catch @Tagir! > >> >> * Check.java >> >> "if (implicitlyStatic || (flags & STATIC) != 0) {" >> >> Don't you already have the "staticOrImplicitlyStatic" var for this? > > right done > >> >> * Symbol.java >> >> Note that javac already has the capability of tracking if a type is a >> varargs type - see this code in Type.java >> >> public ArrayType makeVarargs() { >> ??????????? return new ArrayType(elemtype, tsym, metadata) { >> ??????????????? @Override >> ??????????????? public boolean isVarargs() { >> ??????????????????? return true; >> ??????????????? } >> ??????????? }; >> ??????? } >> >> In other words, from the element type, if you call 'makeVarargs' you >> will get a special ArrayType whose isVarargs() will return true. I >> think that could be used to drop the new boolean flag and make the >> code generally tighter. > > I have removed the field and relied on invoking the isVarargs method > on the type. > >> >> * Attr.java >> >> We already have a compiler diagnostic for when you try to override a >> method with weaker access: >> >> # 0: message segment, 1: set of flag or string >> compiler.err.override.weaker.access=\ >> ??? {0}\n\ >> ??? attempting to assign weaker access privileges; was {1} >> >> I think the wording for the new diagnostic for when you use stronger >> access could be borrowed from this one? (e.g. take the above >> diagnostic and replace weaker with stronger?) > > sounds good, done > >> >> * LocalStaticDeclaration >> >> Since you are there, you might want to also add in the template some >> missing cases: >> >> * instance initializer >> * constructor >> * static method >> >> I know some of the underlying code is shared - but better be safe >> than sorry. > > yep added. > >> >> >> Cheers >> Maurizio >> >> > Thanks, > Vicente > > [1] http://cr.openjdk.java.net/~vromero/8242478/webrev.01/ > [2] > http://cr.openjdk.java.net/~vromero/8242478/webrev.01.forbid.field.assigment/ > [3] > http://cr.openjdk.java.net/~vromero/8242478/webrev.01.review.iteration/ > [4] > http://cr.openjdk.java.net/~gbierman/records2/20200501/specs/records-jls.html >> On 30/04/2020 16:10, Vicente Romero wrote: >>> Hi all, >>> >>> Please review the patch for the second preview of records at [1], >>> the bug entry is at [2] the related spec can be found at [3], the >>> JEP is at [4]. This patch implements the following changes: >>> >>> - local enums and interfaces, along with local records >>> - removed possibility of final modifier for record components >>> - removed requirement that canonical constructor must be public. Any >>> access modifier must provide at least as much access as the record >>> class. If a canonical constructor is implicitly declared, then its >>> access modifier is the same as the record class >>> - check that there is a iff relation between a varargs record >>> component and the corresponding parameter in the canonical >>> constructor so: >>> >>> ?? record R(int... i) { R(int... i) {...}} is allowed but: >>> ?? record R(int... i) { R(int[] i) {...}} is not >>> >>> - new case for using @Override annotation to declare that a method >>> is an accessor method for a record component >>> >>> These are the main changes, plus: >>> - there is one liner change to java.io.ObjectStreamClass, this is >>> related to the fact that now the canonical record don't necessarily >>> has to be public thus the use of Class::getDeclaredConstructor >>> - there is a one liner change concerning the flags of the generated >>> toString method, this is a bug fix, toString didn't have the same >>> flags as hashCode and equals >>> - I have added several tests to enforce other rules in the spec like >>> the one saying that in a compact constructor fields have to be >>> initialized in the same order in which the corresponding record >>> component has been declared, plus some additional tests >>> - test RecordCompilationTests is executed twice now, first in a mode >>> that is equivalent to the original test and then using an "empty" >>> annotation processor. This is because some regressions have been >>> discovered in the past when an annotation processor is present. I >>> have also made some changes to the libraries this test uses. >>> >>> Thanks, >>> Vicente >>> >>> [1] http://cr.openjdk.java.net/~vromero/8242478/webrev.00 >>> [2] https://bugs.openjdk.java.net/browse/JDK-8242478 >>> [3] >>> http://cr.openjdk.java.net/~gbierman/records2/20200428/specs/records-jls.html >>> [4] https://bugs.openjdk.java.net/browse/JDK-8242303 > From vicente.romero at oracle.com Tue May 5 20:13:45 2020 From: vicente.romero at oracle.com (Vicente Romero) Date: Tue, 5 May 2020 16:13:45 -0400 Subject: RFR: JDK-8242478: compiler implementation for records (Second Preview) In-Reply-To: References: <2cb970c0-4054-43af-4640-f991265da9cd@oracle.com> <63ec67bb-94ba-4ed4-849c-c8d194c5f1bb@oracle.com> Message-ID: <18921035-55ae-60f9-a4d6-bc5ad3536154@oracle.com> thanks for the review, I can add one for interfaces and one for records, although records are pretty well covered there is no golden file one for them. We have: enums covered and annotations too with: test/langtools/tools/javac/IllegalAnnotation.java which declares an annotation in a local context, the instance initializer, I will add those two (interfaces and records) to the records-2 branch to push them once we integrate the feature, Vicente On 5/5/20 11:08 AM, Maurizio Cimadamore wrote: > Looks good - a minor nit is that we have a golden file test for > checking that enums in methods are not allowed, but we don't for other > static constructs. > > Maurizio > > On 03/05/2020 21:57, Vicente Romero wrote: >> Hi Maurizio, >> >> Thanks for the review. I have published 3 webrevs [1] is the same as >> the previous review. I just added it again to avoid confusion on what >> the other delta reviews were based on. [2] is implementing a recent >> change in the records spec which forbids assignments to record fields >> inside of the compact constructor. [3] is the patch addressing your >> review comments. The application order is [1, 2, 3]. The latest spec >> is at [4]. There are also some comments inlined below, >> >> On 5/1/20 8:23 AM, Maurizio Cimadamore wrote: >>> Hi Vicente, >>> good work - some comments below: >>> >>> * I think Tagir is right - consider code like this: >>> >>> void m() { >>> ?? enum Foo { A, B }; >>> } >>> >>> surely we want this to fail if you compile it w/o --enable-preview ? >> >> right, I just read Tagir's mail too fast :|, good catch @Tagir! >> >>> >>> * Check.java >>> >>> "if (implicitlyStatic || (flags & STATIC) != 0) {" >>> >>> Don't you already have the "staticOrImplicitlyStatic" var for this? >> >> right done >> >>> >>> * Symbol.java >>> >>> Note that javac already has the capability of tracking if a type is >>> a varargs type - see this code in Type.java >>> >>> public ArrayType makeVarargs() { >>> ??????????? return new ArrayType(elemtype, tsym, metadata) { >>> ??????????????? @Override >>> ??????????????? public boolean isVarargs() { >>> ??????????????????? return true; >>> ??????????????? } >>> ??????????? }; >>> ??????? } >>> >>> In other words, from the element type, if you call 'makeVarargs' you >>> will get a special ArrayType whose isVarargs() will return true. I >>> think that could be used to drop the new boolean flag and make the >>> code generally tighter. >> >> I have removed the field and relied on invoking the isVarargs method >> on the type. >> >>> >>> * Attr.java >>> >>> We already have a compiler diagnostic for when you try to override a >>> method with weaker access: >>> >>> # 0: message segment, 1: set of flag or string >>> compiler.err.override.weaker.access=\ >>> ??? {0}\n\ >>> ??? attempting to assign weaker access privileges; was {1} >>> >>> I think the wording for the new diagnostic for when you use stronger >>> access could be borrowed from this one? (e.g. take the above >>> diagnostic and replace weaker with stronger?) >> >> sounds good, done >> >>> >>> * LocalStaticDeclaration >>> >>> Since you are there, you might want to also add in the template some >>> missing cases: >>> >>> * instance initializer >>> * constructor >>> * static method >>> >>> I know some of the underlying code is shared - but better be safe >>> than sorry. >> >> yep added. >> >>> >>> >>> Cheers >>> Maurizio >>> >>> >> Thanks, >> Vicente >> >> [1] http://cr.openjdk.java.net/~vromero/8242478/webrev.01/ >> [2] >> http://cr.openjdk.java.net/~vromero/8242478/webrev.01.forbid.field.assigment/ >> [3] >> http://cr.openjdk.java.net/~vromero/8242478/webrev.01.review.iteration/ >> [4] >> http://cr.openjdk.java.net/~gbierman/records2/20200501/specs/records-jls.html >>> On 30/04/2020 16:10, Vicente Romero wrote: >>>> Hi all, >>>> >>>> Please review the patch for the second preview of records at [1], >>>> the bug entry is at [2] the related spec can be found at [3], the >>>> JEP is at [4]. This patch implements the following changes: >>>> >>>> - local enums and interfaces, along with local records >>>> - removed possibility of final modifier for record components >>>> - removed requirement that canonical constructor must be public. >>>> Any access modifier must provide at least as much access as the >>>> record class. If a canonical constructor is implicitly declared, >>>> then its access modifier is the same as the record class >>>> - check that there is a iff relation between a varargs record >>>> component and the corresponding parameter in the canonical >>>> constructor so: >>>> >>>> ?? record R(int... i) { R(int... i) {...}} is allowed but: >>>> ?? record R(int... i) { R(int[] i) {...}} is not >>>> >>>> - new case for using @Override annotation to declare that a method >>>> is an accessor method for a record component >>>> >>>> These are the main changes, plus: >>>> - there is one liner change to java.io.ObjectStreamClass, this is >>>> related to the fact that now the canonical record don't necessarily >>>> has to be public thus the use of Class::getDeclaredConstructor >>>> - there is a one liner change concerning the flags of the generated >>>> toString method, this is a bug fix, toString didn't have the same >>>> flags as hashCode and equals >>>> - I have added several tests to enforce other rules in the spec >>>> like the one saying that in a compact constructor fields have to be >>>> initialized in the same order in which the corresponding record >>>> component has been declared, plus some additional tests >>>> - test RecordCompilationTests is executed twice now, first in a >>>> mode that is equivalent to the original test and then using an >>>> "empty" annotation processor. This is because some regressions have >>>> been discovered in the past when an annotation processor is >>>> present. I have also made some changes to the libraries this test >>>> uses. >>>> >>>> Thanks, >>>> Vicente >>>> >>>> [1] http://cr.openjdk.java.net/~vromero/8242478/webrev.00 >>>> [2] https://bugs.openjdk.java.net/browse/JDK-8242478 >>>> [3] >>>> http://cr.openjdk.java.net/~gbierman/records2/20200428/specs/records-jls.html >>>> [4] https://bugs.openjdk.java.net/browse/JDK-8242303 >> From jan.lahoda at oracle.com Wed May 6 15:30:52 2020 From: jan.lahoda at oracle.com (Jan Lahoda) Date: Wed, 6 May 2020 17:30:52 +0200 Subject: Faster incremental OpenJDK compilation Message-ID: Hi, Triggered by Magnus' recent e-mail on adjusting the location of the IDE files, I looked at possibilities to improve speed of incremental compilation using make. About 3 years ago, we have sped up incremental build by only rebuilding modules when API of modules they depend on changed. But the module which contains modified sources is always compiled in full. So, for changes in java.base, this change improved the incremental build time significantly (by not recompiling e.g. java.desktop), but it can still take many seconds to build java.base after a trivial change. So, this time, I am thinking of speeding up module builds by not rebuilding all the source if possible. What I am thinking of is a relatively simple approach: detect changed files in a module and check if their "interface" changed. If it did, recompile the whole module. If it didn't, only compile the modified files. As a consequence, a small change inside a method body should lead to a fast build. Changes outside of method bodies may trigger longer build, but my hope would be that these would be less common. So far, I unfortunately don't know how to efficiently do this as nicely as the API digests used for inter-module dependencies. The approach that seems might work is this: the Depend plugin hooks itself into javac internals, and filters the incoming files - it first parses the modified ones, and if it cannot find a significant change, it will throw away the unmodified files, and only compile the modified ones. (In principle, it could also do dependency analysis, if we at some point decide it is important.) For a simple "touch Object.java && make", the wall-clock time is less then 5s, which sounds interesting: --- $ touch src/java.base/share/classes/java/lang/Object.java && time make Building target 'default (exploded-image)' in configuration 'linux-x86_64-server-release' Compiling 3028 files for java.base Stopping sjavac server Finished building target 'default (exploded-image)' in configuration 'linux-x86_64-server-release' real 0m3,104s user 0m5,731s sys 0m1,086s --- My current prototype is in the jdk/sandbox repository, branch "jlahoda-depend-in-module": http://hg.openjdk.java.net/jdk/sandbox/shortlog/jlahoda-depend-in-module I wonder if this would sound interesting to developers working on base modules, like java.base. What do you think? Any ideas/feedback? Thanks, Jan From forax at univ-mlv.fr Wed May 6 15:56:38 2020 From: forax at univ-mlv.fr (Remi Forax) Date: Wed, 6 May 2020 17:56:38 +0200 (CEST) Subject: Faster incremental OpenJDK compilation In-Reply-To: References: Message-ID: <234188178.1766036.1588780598274.JavaMail.zimbra@u-pem.fr> ----- Mail original ----- > De: "jan lahoda" > ?: ide-support-dev at openjdk.java.net, "compiler-dev" > Envoy?: Mercredi 6 Mai 2020 17:30:52 > Objet: Faster incremental OpenJDK compilation > Hi, > > Triggered by Magnus' recent e-mail on adjusting the location of the IDE > files, I looked at possibilities to improve speed of incremental > compilation using make. About 3 years ago, we have sped up incremental > build by only rebuilding modules when API of modules they depend on > changed. But the module which contains modified sources is always > compiled in full. So, for changes in java.base, this change improved the > incremental build time significantly (by not recompiling e.g. > java.desktop), but it can still take many seconds to build java.base > after a trivial change. So, this time, I am thinking of speeding up > module builds by not rebuilding all the source if possible. > > What I am thinking of is a relatively simple approach: detect changed > files in a module and check if their "interface" changed. If it did, > recompile the whole module. If it didn't, only compile the modified > files. As a consequence, a small change inside a method body should lead > to a fast build. Changes outside of method bodies may trigger longer > build, but my hope would be that these would be less common. > > So far, I unfortunately don't know how to efficiently do this as nicely > as the API digests used for inter-module dependencies. The approach that > seems might work is this: the Depend plugin hooks itself into javac > internals, and filters the incoming files - it first parses the modified > ones, and if it cannot find a significant change, it will throw away the > unmodified files, and only compile the modified ones. (In principle, it > could also do dependency analysis, if we at some point decide it is > important.) I think you are missing the dependencies that are changing the generated code, - in a switch, javac generates a different code depending on the order of the enum constants, - static final are inlined in the code, - for valhalla, changing a class to an inline class or vice versa change all the method/field descriptors and i'm sure there are more ... > > For a simple "touch Object.java && make", the wall-clock time is less > then 5s, which sounds interesting: > --- > $ touch src/java.base/share/classes/java/lang/Object.java && time make > Building target 'default (exploded-image)' in configuration > 'linux-x86_64-server-release' > Compiling 3028 files for java.base > Stopping sjavac server > Finished building target 'default (exploded-image)' in configuration > 'linux-x86_64-server-release' > > real 0m3,104s > user 0m5,731s > sys 0m1,086s > --- > > My current prototype is in the jdk/sandbox repository, branch > "jlahoda-depend-in-module": > http://hg.openjdk.java.net/jdk/sandbox/shortlog/jlahoda-depend-in-module > > I wonder if this would sound interesting to developers working on base > modules, like java.base. > > What do you think? Any ideas/feedback? > > Thanks, > Jan R?mi From amaembo at gmail.com Wed May 6 16:05:47 2020 From: amaembo at gmail.com (Tagir Valeev) Date: Wed, 6 May 2020 23:05:47 +0700 Subject: Faster incremental OpenJDK compilation In-Reply-To: <234188178.1766036.1588780598274.JavaMail.zimbra@u-pem.fr> References: <234188178.1766036.1588780598274.JavaMail.zimbra@u-pem.fr> Message-ID: Hello! I think you are missing the dependencies that are changing the generated > code, > - in a switch, javac generates a different code depending on the order of > the enum constants, > - static final are inlined in the code, > - for valhalla, changing a class to an inline class or vice versa change > all the method/field descriptors > > and i'm sure there are more ... > I think changing the annotation retention policy affects the compilation of every use site of that annotation. Changing target (e.g. adding or removing TYPE_USE) may also change the generated code for the use sites. > > > > For a simple "touch Object.java && make", the wall-clock time is less > > then 5s, which sounds interesting: > > --- > > $ touch src/java.base/share/classes/java/lang/Object.java && time make > > Building target 'default (exploded-image)' in configuration > > 'linux-x86_64-server-release' > > Compiling 3028 files for java.base > > Stopping sjavac server > > Finished building target 'default (exploded-image)' in configuration > > 'linux-x86_64-server-release' > > > > real 0m3,104s > > user 0m5,731s > > sys 0m1,086s > > --- > > > > My current prototype is in the jdk/sandbox repository, branch > > "jlahoda-depend-in-module": > > http://hg.openjdk.java.net/jdk/sandbox/shortlog/jlahoda-depend-in-module > > > > I wonder if this would sound interesting to developers working on base > > modules, like java.base. > > > > What do you think? Any ideas/feedback? > > > > Thanks, > > Jan > > R?mi > -------------- next part -------------- An HTML attachment was scrubbed... URL: From jonathan.gibbons at oracle.com Wed May 6 16:07:34 2020 From: jonathan.gibbons at oracle.com (Jonathan Gibbons) Date: Wed, 6 May 2020 09:07:34 -0700 Subject: Faster incremental OpenJDK compilation In-Reply-To: References: Message-ID: Jan, This seems like an interesting approach. How are you determining "significant change"?? I could imagine trying to do this by looking at the changed lines, to see if they only within method bodies and comments (for example), or by doing some sort of lexical hash on the signatures, assuming that folk aren't messing with imports to change the resolution of simple type names in the signature. -- Jon On 5/6/20 8:30 AM, Jan Lahoda wrote: > Hi, > > Triggered by Magnus' recent e-mail on adjusting the location of the > IDE files, I looked at possibilities to improve speed of incremental > compilation using make. About 3 years ago, we have sped up incremental > build by only rebuilding modules when API of modules they depend on > changed. But the module which contains modified sources is always > compiled in full. So, for changes in java.base, this change improved > the incremental build time significantly (by not recompiling e.g. > java.desktop), but it can still take many seconds to build java.base > after a trivial change. So, this time, I am thinking of speeding up > module builds by not rebuilding all the source if possible. > > What I am thinking of is a relatively simple approach: detect changed > files in a module and check if their "interface" changed. If it did, > recompile the whole module. If it didn't, only compile the modified > files. As a consequence, a small change inside a method body should > lead to a fast build. Changes outside of method bodies may trigger > longer build, but my hope would be that these would be less common. > > So far, I unfortunately don't know how to efficiently do this as > nicely as the API digests used for inter-module dependencies. The > approach that seems might work is this: the Depend plugin hooks itself > into javac internals, and filters the incoming files - it first parses > the modified ones, and if it cannot find a significant change, it will > throw away the unmodified files, and only compile the modified ones. > (In principle, it could also do dependency analysis, if we at some > point decide it is important.) > > For a simple "touch Object.java && make", the wall-clock time is less > then 5s, which sounds interesting: > --- > $ touch src/java.base/share/classes/java/lang/Object.java && time make > Building target 'default (exploded-image)' in configuration > 'linux-x86_64-server-release' > Compiling 3028 files for java.base > Stopping sjavac server > Finished building target 'default (exploded-image)' in configuration > 'linux-x86_64-server-release' > > real??? 0m3,104s > user??? 0m5,731s > sys???? 0m1,086s > --- > > My current prototype is in the jdk/sandbox repository, branch > "jlahoda-depend-in-module": > http://hg.openjdk.java.net/jdk/sandbox/shortlog/jlahoda-depend-in-module > > I wonder if this would sound interesting to developers working on base > modules, like java.base. > > What do you think? Any ideas/feedback? > > Thanks, > ???? Jan > From jan.lahoda at oracle.com Wed May 6 16:37:50 2020 From: jan.lahoda at oracle.com (Jan Lahoda) Date: Wed, 6 May 2020 18:37:50 +0200 Subject: Faster incremental OpenJDK compilation In-Reply-To: <234188178.1766036.1588780598274.JavaMail.zimbra@u-pem.fr> References: <234188178.1766036.1588780598274.JavaMail.zimbra@u-pem.fr> Message-ID: <0275d0eb-cde5-dafd-51ca-ac2836cf4074@oracle.com> On 06. 05. 20 17:56, Remi Forax wrote: > > > ----- Mail original ----- >> De: "jan lahoda" >> ?: ide-support-dev at openjdk.java.net, "compiler-dev" >> Envoy?: Mercredi 6 Mai 2020 17:30:52 >> Objet: Faster incremental OpenJDK compilation > >> Hi, >> >> Triggered by Magnus' recent e-mail on adjusting the location of the IDE >> files, I looked at possibilities to improve speed of incremental >> compilation using make. About 3 years ago, we have sped up incremental >> build by only rebuilding modules when API of modules they depend on >> changed. But the module which contains modified sources is always >> compiled in full. So, for changes in java.base, this change improved the >> incremental build time significantly (by not recompiling e.g. >> java.desktop), but it can still take many seconds to build java.base >> after a trivial change. So, this time, I am thinking of speeding up >> module builds by not rebuilding all the source if possible. >> >> What I am thinking of is a relatively simple approach: detect changed >> files in a module and check if their "interface" changed. If it did, >> recompile the whole module. If it didn't, only compile the modified >> files. As a consequence, a small change inside a method body should lead >> to a fast build. Changes outside of method bodies may trigger longer >> build, but my hope would be that these would be less common. >> >> So far, I unfortunately don't know how to efficiently do this as nicely >> as the API digests used for inter-module dependencies. The approach that >> seems might work is this: the Depend plugin hooks itself into javac >> internals, and filters the incoming files - it first parses the modified >> ones, and if it cannot find a significant change, it will throw away the >> unmodified files, and only compile the modified ones. (In principle, it >> could also do dependency analysis, if we at some point decide it is >> important.) > > > I think you are missing the dependencies that are changing the generated code, Do you mean for the current hashing, or for the new hashing? The new hashing is more sketchy now (I just realized modifiers are not reflected in the hash properly). But in both cases, I believe the intent is to make the hashing conservative (and easy), potentially causing more rebuilds than necessary, although I could see some arguments for being more optimistic. (This is basically only for people developing OpenJDK, after all.) > - in a switch, javac generates a different code depending on the order of the enum constants, I believe that any change to order of significant members will change the API hashes. (Which, admittedly, might be overly conservative.) > - static final are inlined in the code, For the existing API hash, changes to compile-time constants should change the hash. For the new intra-module hash, currently, (significant) fields initializers are included in full (this is probably overly pessimistic.) > - for valhalla, changing a class to an inline class or vice versa change all the method/field descriptors As long as that is reflected in the modifiers, we should be able to handle fine. If not, then the hashing may need some more tweaks. > > and i'm sure there are more .. Possibly - and it is entirely possible the current hashes are way too conservative. But what I wonder about is if people developing e.g. java.base would find such faster incremental builds useful. Jan > >> >> For a simple "touch Object.java && make", the wall-clock time is less >> then 5s, which sounds interesting: >> --- >> $ touch src/java.base/share/classes/java/lang/Object.java && time make >> Building target 'default (exploded-image)' in configuration >> 'linux-x86_64-server-release' >> Compiling 3028 files for java.base >> Stopping sjavac server >> Finished building target 'default (exploded-image)' in configuration >> 'linux-x86_64-server-release' >> >> real 0m3,104s >> user 0m5,731s >> sys 0m1,086s >> --- >> >> My current prototype is in the jdk/sandbox repository, branch >> "jlahoda-depend-in-module": >> http://hg.openjdk.java.net/jdk/sandbox/shortlog/jlahoda-depend-in-module >> >> I wonder if this would sound interesting to developers working on base >> modules, like java.base. >> >> What do you think? Any ideas/feedback? >> >> Thanks, >> Jan > > R?mi > From maurizio.cimadamore at oracle.com Wed May 6 16:48:18 2020 From: maurizio.cimadamore at oracle.com (Maurizio Cimadamore) Date: Wed, 6 May 2020 17:48:18 +0100 Subject: Faster incremental OpenJDK compilation In-Reply-To: References: Message-ID: On 06/05/2020 16:30, Jan Lahoda wrote: > I wonder if this would sound interesting to developers working on base > modules, like java.base. This would be extremely good. When working on Valhalla/Panama it happened to me quite frequently that, when changing something in the _implementation_ of one of the core classes (var handle, method handle, you name it), as a result, everything else needs to be recompiled. After having witnessed some of the attempts with dependency tracking with sjavac, my personal feeling is that simpler is better - and what you have might well be a sweet spot in terms of complexity vs. benefits ratio. Maurizio From jan.lahoda at oracle.com Wed May 6 16:49:28 2020 From: jan.lahoda at oracle.com (Jan Lahoda) Date: Wed, 6 May 2020 18:49:28 +0200 Subject: Faster incremental OpenJDK compilation In-Reply-To: References: Message-ID: <2f8b5f2f-f037-22fe-544b-4fc37617fa35@oracle.com> Hi Jon, Good question. I was first experimenting with hashing Elements, as we do currently for the module API hashes, but it was too slow to enter the sources (although it is not completely impossible). So I did a new hashing based on the AST - basically, it is a TreeScanner sending Tree kinds, names and sub-trees into a MessageDigest. It ignores things like method bodies, class initializers, and private class members. Does not currently skip imports, although that may be seen as too conservative. But tweaks to the AST hashing are surely still needed, so we can tweak the exact meaning of a "significant change". Jan On 06. 05. 20 18:07, Jonathan Gibbons wrote: > Jan, > > This seems like an interesting approach. > > How are you determining "significant change"?? I could imagine trying to > do this by looking at the changed lines, to see if they only within > method bodies and comments (for example), or by doing some sort of > lexical hash on the signatures, assuming that folk aren't messing with > imports to change the resolution of simple type names in the signature. > > -- Jon > > On 5/6/20 8:30 AM, Jan Lahoda wrote: >> Hi, >> >> Triggered by Magnus' recent e-mail on adjusting the location of the >> IDE files, I looked at possibilities to improve speed of incremental >> compilation using make. About 3 years ago, we have sped up incremental >> build by only rebuilding modules when API of modules they depend on >> changed. But the module which contains modified sources is always >> compiled in full. So, for changes in java.base, this change improved >> the incremental build time significantly (by not recompiling e.g. >> java.desktop), but it can still take many seconds to build java.base >> after a trivial change. So, this time, I am thinking of speeding up >> module builds by not rebuilding all the source if possible. >> >> What I am thinking of is a relatively simple approach: detect changed >> files in a module and check if their "interface" changed. If it did, >> recompile the whole module. If it didn't, only compile the modified >> files. As a consequence, a small change inside a method body should >> lead to a fast build. Changes outside of method bodies may trigger >> longer build, but my hope would be that these would be less common. >> >> So far, I unfortunately don't know how to efficiently do this as >> nicely as the API digests used for inter-module dependencies. The >> approach that seems might work is this: the Depend plugin hooks itself >> into javac internals, and filters the incoming files - it first parses >> the modified ones, and if it cannot find a significant change, it will >> throw away the unmodified files, and only compile the modified ones. >> (In principle, it could also do dependency analysis, if we at some >> point decide it is important.) >> >> For a simple "touch Object.java && make", the wall-clock time is less >> then 5s, which sounds interesting: >> --- >> $ touch src/java.base/share/classes/java/lang/Object.java && time make >> Building target 'default (exploded-image)' in configuration >> 'linux-x86_64-server-release' >> Compiling 3028 files for java.base >> Stopping sjavac server >> Finished building target 'default (exploded-image)' in configuration >> 'linux-x86_64-server-release' >> >> real??? 0m3,104s >> user??? 0m5,731s >> sys???? 0m1,086s >> --- >> >> My current prototype is in the jdk/sandbox repository, branch >> "jlahoda-depend-in-module": >> http://hg.openjdk.java.net/jdk/sandbox/shortlog/jlahoda-depend-in-module >> >> I wonder if this would sound interesting to developers working on base >> modules, like java.base. >> >> What do you think? Any ideas/feedback? >> >> Thanks, >> ???? Jan >> From jan.lahoda at oracle.com Wed May 6 16:52:54 2020 From: jan.lahoda at oracle.com (Jan Lahoda) Date: Wed, 6 May 2020 18:52:54 +0200 Subject: Faster incremental OpenJDK compilation In-Reply-To: <0275d0eb-cde5-dafd-51ca-ac2836cf4074@oracle.com> References: <234188178.1766036.1588780598274.JavaMail.zimbra@u-pem.fr> <0275d0eb-cde5-dafd-51ca-ac2836cf4074@oracle.com> Message-ID: FWIW, I should explain this only relates to the OpenJDK build. This is not a proposal to do any kind of tweaks like this in javac for other compilations. I realized I only wrote that into the subject, but not the body. Sorry for that. Jan On 06. 05. 20 18:37, Jan Lahoda wrote: > On 06. 05. 20 17:56, Remi Forax wrote: >> >> >> ----- Mail original ----- >>> De: "jan lahoda" >>> ?: ide-support-dev at openjdk.java.net, "compiler-dev" >>> >>> Envoy?: Mercredi 6 Mai 2020 17:30:52 >>> Objet: Faster incremental OpenJDK compilation >> >>> Hi, >>> >>> Triggered by Magnus' recent e-mail on adjusting the location of the IDE >>> files, I looked at possibilities to improve speed of incremental >>> compilation using make. About 3 years ago, we have sped up incremental >>> build by only rebuilding modules when API of modules they depend on >>> changed. But the module which contains modified sources is always >>> compiled in full. So, for changes in java.base, this change improved the >>> incremental build time significantly (by not recompiling e.g. >>> java.desktop), but it can still take many seconds to build java.base >>> after a trivial change. So, this time, I am thinking of speeding up >>> module builds by not rebuilding all the source if possible. >>> >>> What I am thinking of is a relatively simple approach: detect changed >>> files in a module and check if their "interface" changed. If it did, >>> recompile the whole module. If it didn't, only compile the modified >>> files. As a consequence, a small change inside a method body should lead >>> to a fast build. Changes outside of method bodies may trigger longer >>> build, but my hope would be that these would be less common. >>> >>> So far, I unfortunately don't know how to efficiently do this as nicely >>> as the API digests used for inter-module dependencies. The approach that >>> seems might work is this: the Depend plugin hooks itself into javac >>> internals, and filters the incoming files - it first parses the modified >>> ones, and if it cannot find a significant change, it will throw away the >>> unmodified files, and only compile the modified ones. (In principle, it >>> could also do dependency analysis, if we at some point decide it is >>> important.) >> >> >> I think you are missing the dependencies that are changing the >> generated code, > > Do you mean for the current hashing, or for the new hashing? > > The new hashing is more sketchy now (I just realized modifiers are not > reflected in the hash properly). But in both cases, I believe the intent > is to make the hashing conservative (and easy), potentially causing more > rebuilds than necessary, although I could see some arguments for being > more optimistic. (This is basically only for people developing OpenJDK, > after all.) > >> - in a switch, javac generates a different code depending on the order >> of the enum constants, > > I believe that any change to order of significant members will change > the API hashes. (Which, admittedly, might be overly conservative.) > >> - static final are inlined in the code, > > For the existing API hash, changes to compile-time constants should > change the hash. For the new intra-module hash, currently, (significant) > fields initializers are included in full (this is probably overly > pessimistic.) > >> - for valhalla, changing a class to an inline class or vice versa >> change all the method/field descriptors > > As long as that is reflected in the modifiers, we should be able to > handle fine. If not, then the hashing may need some more tweaks. > >> >> and i'm sure there are more .. > > Possibly - and it is entirely possible the current hashes are way too > conservative. But what I wonder about is if people developing e.g. > java.base would find such faster incremental builds useful. > > Jan > >> >>> >>> For a simple "touch Object.java && make", the wall-clock time is less >>> then 5s, which sounds interesting: >>> --- >>> $ touch src/java.base/share/classes/java/lang/Object.java && time make >>> Building target 'default (exploded-image)' in configuration >>> 'linux-x86_64-server-release' >>> Compiling 3028 files for java.base >>> Stopping sjavac server >>> Finished building target 'default (exploded-image)' in configuration >>> 'linux-x86_64-server-release' >>> >>> real??? 0m3,104s >>> user??? 0m5,731s >>> sys???? 0m1,086s >>> --- >>> >>> My current prototype is in the jdk/sandbox repository, branch >>> "jlahoda-depend-in-module": >>> http://hg.openjdk.java.net/jdk/sandbox/shortlog/jlahoda-depend-in-module >>> >>> I wonder if this would sound interesting to developers working on base >>> modules, like java.base. >>> >>> What do you think? Any ideas/feedback? >>> >>> Thanks, >>> ?????? Jan >> >> R?mi >> From jonathan.gibbons at oracle.com Wed May 6 17:23:46 2020 From: jonathan.gibbons at oracle.com (Jonathan Gibbons) Date: Wed, 6 May 2020 10:23:46 -0700 Subject: Faster incremental OpenJDK compilation In-Reply-To: <2f8b5f2f-f037-22fe-544b-4fc37617fa35@oracle.com> References: <2f8b5f2f-f037-22fe-544b-4fc37617fa35@oracle.com> Message-ID: You could refine the imports by filtering them according to whether they are 'star-imports' or the simple name matches a simple name that has been seen by the TreeScanner.? In other words, try and filter out imports that are definitely not relevant. -- Jon On 5/6/20 9:49 AM, Jan Lahoda wrote: > Hi Jon, > > Good question. I was first experimenting with hashing Elements, as we > do currently for the module API hashes, but it was too slow to enter > the sources (although it is not completely impossible). So I did a new > hashing based on the AST - basically, it is a TreeScanner sending Tree > kinds, names and sub-trees into a MessageDigest. It ignores things > like method bodies, class initializers, and private class members. > Does not currently skip imports, although that may be seen as too > conservative. But tweaks to the AST hashing are surely still needed, > so we can tweak the exact meaning of a "significant change". > > Jan > > On 06. 05. 20 18:07, Jonathan Gibbons wrote: >> Jan, >> >> This seems like an interesting approach. >> >> How are you determining "significant change"?? I could imagine trying >> to do this by looking at the changed lines, to see if they only >> within method bodies and comments (for example), or by doing some >> sort of lexical hash on the signatures, assuming that folk aren't >> messing with imports to change the resolution of simple type names in >> the signature. >> >> -- Jon >> >> On 5/6/20 8:30 AM, Jan Lahoda wrote: >>> Hi, >>> >>> Triggered by Magnus' recent e-mail on adjusting the location of the >>> IDE files, I looked at possibilities to improve speed of incremental >>> compilation using make. About 3 years ago, we have sped up >>> incremental build by only rebuilding modules when API of modules >>> they depend on changed. But the module which contains modified >>> sources is always compiled in full. So, for changes in java.base, >>> this change improved the incremental build time significantly (by >>> not recompiling e.g. java.desktop), but it can still take many >>> seconds to build java.base after a trivial change. So, this time, I >>> am thinking of speeding up module builds by not rebuilding all the >>> source if possible. >>> >>> What I am thinking of is a relatively simple approach: detect >>> changed files in a module and check if their "interface" changed. If >>> it did, recompile the whole module. If it didn't, only compile the >>> modified files. As a consequence, a small change inside a method >>> body should lead to a fast build. Changes outside of method bodies >>> may trigger longer build, but my hope would be that these would be >>> less common. >>> >>> So far, I unfortunately don't know how to efficiently do this as >>> nicely as the API digests used for inter-module dependencies. The >>> approach that seems might work is this: the Depend plugin hooks >>> itself into javac internals, and filters the incoming files - it >>> first parses the modified ones, and if it cannot find a significant >>> change, it will throw away the unmodified files, and only compile >>> the modified ones. (In principle, it could also do dependency >>> analysis, if we at some point decide it is important.) >>> >>> For a simple "touch Object.java && make", the wall-clock time is >>> less then 5s, which sounds interesting: >>> --- >>> $ touch src/java.base/share/classes/java/lang/Object.java && time make >>> Building target 'default (exploded-image)' in configuration >>> 'linux-x86_64-server-release' >>> Compiling 3028 files for java.base >>> Stopping sjavac server >>> Finished building target 'default (exploded-image)' in configuration >>> 'linux-x86_64-server-release' >>> >>> real??? 0m3,104s >>> user??? 0m5,731s >>> sys???? 0m1,086s >>> --- >>> >>> My current prototype is in the jdk/sandbox repository, branch >>> "jlahoda-depend-in-module": >>> http://hg.openjdk.java.net/jdk/sandbox/shortlog/jlahoda-depend-in-module >>> >>> >>> I wonder if this would sound interesting to developers working on >>> base modules, like java.base. >>> >>> What do you think? Any ideas/feedback? >>> >>> Thanks, >>> ???? Jan >>> From forax at univ-mlv.fr Wed May 6 17:39:22 2020 From: forax at univ-mlv.fr (forax at univ-mlv.fr) Date: Wed, 6 May 2020 19:39:22 +0200 (CEST) Subject: Faster incremental OpenJDK compilation In-Reply-To: References: <234188178.1766036.1588780598274.JavaMail.zimbra@u-pem.fr> <0275d0eb-cde5-dafd-51ca-ac2836cf4074@oracle.com> Message-ID: <485454566.1809757.1588786762106.JavaMail.zimbra@u-pem.fr> ----- Mail original ----- > De: "jan lahoda" > ?: "Remi Forax" > Cc: "ide-support-dev" , "compiler-dev" > Envoy?: Mercredi 6 Mai 2020 18:52:54 > Objet: Re: Faster incremental OpenJDK compilation > FWIW, I should explain this only relates to the OpenJDK build. This is > not a proposal to do any kind of tweaks like this in javac for other > compilations. I realized I only wrote that into the subject, but not the > body. Sorry for that. What i saying is just that your incremental mode is not safe to use, checking the interface of the classfile is not enough. > > Jan R?mi > > On 06. 05. 20 18:37, Jan Lahoda wrote: >> On 06. 05. 20 17:56, Remi Forax wrote: >>> >>> >>> ----- Mail original ----- >>>> De: "jan lahoda" >>>> ?: ide-support-dev at openjdk.java.net, "compiler-dev" >>>> >>>> Envoy?: Mercredi 6 Mai 2020 17:30:52 >>>> Objet: Faster incremental OpenJDK compilation >>> >>>> Hi, >>>> >>>> Triggered by Magnus' recent e-mail on adjusting the location of the IDE >>>> files, I looked at possibilities to improve speed of incremental >>>> compilation using make. About 3 years ago, we have sped up incremental >>>> build by only rebuilding modules when API of modules they depend on >>>> changed. But the module which contains modified sources is always >>>> compiled in full. So, for changes in java.base, this change improved the >>>> incremental build time significantly (by not recompiling e.g. >>>> java.desktop), but it can still take many seconds to build java.base >>>> after a trivial change. So, this time, I am thinking of speeding up >>>> module builds by not rebuilding all the source if possible. >>>> >>>> What I am thinking of is a relatively simple approach: detect changed >>>> files in a module and check if their "interface" changed. If it did, >>>> recompile the whole module. If it didn't, only compile the modified >>>> files. As a consequence, a small change inside a method body should lead >>>> to a fast build. Changes outside of method bodies may trigger longer >>>> build, but my hope would be that these would be less common. >>>> >>>> So far, I unfortunately don't know how to efficiently do this as nicely >>>> as the API digests used for inter-module dependencies. The approach that >>>> seems might work is this: the Depend plugin hooks itself into javac >>>> internals, and filters the incoming files - it first parses the modified >>>> ones, and if it cannot find a significant change, it will throw away the >>>> unmodified files, and only compile the modified ones. (In principle, it >>>> could also do dependency analysis, if we at some point decide it is >>>> important.) >>> >>> >>> I think you are missing the dependencies that are changing the >>> generated code, >> >> Do you mean for the current hashing, or for the new hashing? >> >> The new hashing is more sketchy now (I just realized modifiers are not >> reflected in the hash properly). But in both cases, I believe the intent >> is to make the hashing conservative (and easy), potentially causing more >> rebuilds than necessary, although I could see some arguments for being >> more optimistic. (This is basically only for people developing OpenJDK, >> after all.) >> >>> - in a switch, javac generates a different code depending on the order >>> of the enum constants, >> >> I believe that any change to order of significant members will change >> the API hashes. (Which, admittedly, might be overly conservative.) >> >>> - static final are inlined in the code, >> >> For the existing API hash, changes to compile-time constants should >> change the hash. For the new intra-module hash, currently, (significant) >> fields initializers are included in full (this is probably overly >> pessimistic.) >> >>> - for valhalla, changing a class to an inline class or vice versa >>> change all the method/field descriptors >> >> As long as that is reflected in the modifiers, we should be able to >> handle fine. If not, then the hashing may need some more tweaks. >> >>> >>> and i'm sure there are more .. >> >> Possibly - and it is entirely possible the current hashes are way too >> conservative. But what I wonder about is if people developing e.g. >> java.base would find such faster incremental builds useful. >> >> Jan >> >>> >>>> >>>> For a simple "touch Object.java && make", the wall-clock time is less >>>> then 5s, which sounds interesting: >>>> --- >>>> $ touch src/java.base/share/classes/java/lang/Object.java && time make >>>> Building target 'default (exploded-image)' in configuration >>>> 'linux-x86_64-server-release' >>>> Compiling 3028 files for java.base >>>> Stopping sjavac server >>>> Finished building target 'default (exploded-image)' in configuration >>>> 'linux-x86_64-server-release' >>>> >>>> real??? 0m3,104s >>>> user??? 0m5,731s >>>> sys???? 0m1,086s >>>> --- >>>> >>>> My current prototype is in the jdk/sandbox repository, branch >>>> "jlahoda-depend-in-module": >>>> http://hg.openjdk.java.net/jdk/sandbox/shortlog/jlahoda-depend-in-module >>>> >>>> I wonder if this would sound interesting to developers working on base >>>> modules, like java.base. >>>> >>>> What do you think? Any ideas/feedback? >>>> >>>> Thanks, >>>> ?????? Jan >>> >>> R?mi From jan.lahoda at oracle.com Wed May 6 18:24:35 2020 From: jan.lahoda at oracle.com (Jan Lahoda) Date: Wed, 6 May 2020 20:24:35 +0200 Subject: Faster incremental OpenJDK compilation In-Reply-To: <485454566.1809757.1588786762106.JavaMail.zimbra@u-pem.fr> References: <234188178.1766036.1588780598274.JavaMail.zimbra@u-pem.fr> <0275d0eb-cde5-dafd-51ca-ac2836cf4074@oracle.com> <485454566.1809757.1588786762106.JavaMail.zimbra@u-pem.fr> Message-ID: <25156cde-aa9e-528e-d175-b7e1e14e43fe@oracle.com> On 06. 05. 20 19:39, forax at univ-mlv.fr wrote: > ----- Mail original ----- >> De: "jan lahoda" >> ?: "Remi Forax" >> Cc: "ide-support-dev" , "compiler-dev" >> Envoy?: Mercredi 6 Mai 2020 18:52:54 >> Objet: Re: Faster incremental OpenJDK compilation > >> FWIW, I should explain this only relates to the OpenJDK build. This is >> not a proposal to do any kind of tweaks like this in javac for other >> compilations. I realized I only wrote that into the subject, but not the >> body. Sorry for that. > > What i saying is just that your incremental mode is not safe to use, checking the interface of the classfile is not enough. I definitely would not recommend to use outcomes of incremental builds in production, but my goal is to have it safe enough so that it can be enabled, and developers would only notice having faster incremental builds (mostly for testing). Note the existing module API hashing exists, and is enabled by default, for some time, and I am not aware of any cases where the hashing as such would not trigger a rebuild of module even if it should (but it is possible such cases exist, I just don't know about them). Please note the hashing is not based on classfiles. The existing hashing is using javax.lang.model to hash APIs in exported packages. See: http://hg.openjdk.java.net/jdk/jdk/file/7223c6d61034/make/jdk/src/classes/build/tools/depend/Depend.java#l122 http://hg.openjdk.java.net/jdk/jdk/file/7223c6d61034/make/jdk/src/classes/build/tools/depend/Depend.java#l167 This produces a hash, and if the hash differs from the last recorded hash, a recompilation of all modules that depend on the current module is triggered (this is done using make dependencies, and existed even before the API hashing). This new proposal attempts to take a similar approach inside modules (esp. java.base and jdk.compiler). Basically, what I tried is to let the javac's AST for the modified files go through a visitor that will hash the AST nodes (ignoring method bodies, etc.), and if the hash is not the same as the last time the given file was compiled, all the sources of the given module are compiled: http://hg.openjdk.java.net/jdk/sandbox/file/4b454fa5c057/make/jdk/src/classes/build/tools/depend/Depend.java#l639 There may be bugs in the hashing, of course. Jan > >> >> Jan > > R?mi > >> >> On 06. 05. 20 18:37, Jan Lahoda wrote: >>> On 06. 05. 20 17:56, Remi Forax wrote: >>>> >>>> >>>> ----- Mail original ----- >>>>> De: "jan lahoda" >>>>> ?: ide-support-dev at openjdk.java.net, "compiler-dev" >>>>> >>>>> Envoy?: Mercredi 6 Mai 2020 17:30:52 >>>>> Objet: Faster incremental OpenJDK compilation >>>> >>>>> Hi, >>>>> >>>>> Triggered by Magnus' recent e-mail on adjusting the location of the IDE >>>>> files, I looked at possibilities to improve speed of incremental >>>>> compilation using make. About 3 years ago, we have sped up incremental >>>>> build by only rebuilding modules when API of modules they depend on >>>>> changed. But the module which contains modified sources is always >>>>> compiled in full. So, for changes in java.base, this change improved the >>>>> incremental build time significantly (by not recompiling e.g. >>>>> java.desktop), but it can still take many seconds to build java.base >>>>> after a trivial change. So, this time, I am thinking of speeding up >>>>> module builds by not rebuilding all the source if possible. >>>>> >>>>> What I am thinking of is a relatively simple approach: detect changed >>>>> files in a module and check if their "interface" changed. If it did, >>>>> recompile the whole module. If it didn't, only compile the modified >>>>> files. As a consequence, a small change inside a method body should lead >>>>> to a fast build. Changes outside of method bodies may trigger longer >>>>> build, but my hope would be that these would be less common. >>>>> >>>>> So far, I unfortunately don't know how to efficiently do this as nicely >>>>> as the API digests used for inter-module dependencies. The approach that >>>>> seems might work is this: the Depend plugin hooks itself into javac >>>>> internals, and filters the incoming files - it first parses the modified >>>>> ones, and if it cannot find a significant change, it will throw away the >>>>> unmodified files, and only compile the modified ones. (In principle, it >>>>> could also do dependency analysis, if we at some point decide it is >>>>> important.) >>>> >>>> >>>> I think you are missing the dependencies that are changing the >>>> generated code, >>> >>> Do you mean for the current hashing, or for the new hashing? >>> >>> The new hashing is more sketchy now (I just realized modifiers are not >>> reflected in the hash properly). But in both cases, I believe the intent >>> is to make the hashing conservative (and easy), potentially causing more >>> rebuilds than necessary, although I could see some arguments for being >>> more optimistic. (This is basically only for people developing OpenJDK, >>> after all.) >>> >>>> - in a switch, javac generates a different code depending on the order >>>> of the enum constants, >>> >>> I believe that any change to order of significant members will change >>> the API hashes. (Which, admittedly, might be overly conservative.) >>> >>>> - static final are inlined in the code, >>> >>> For the existing API hash, changes to compile-time constants should >>> change the hash. For the new intra-module hash, currently, (significant) >>> fields initializers are included in full (this is probably overly >>> pessimistic.) >>> >>>> - for valhalla, changing a class to an inline class or vice versa >>>> change all the method/field descriptors >>> >>> As long as that is reflected in the modifiers, we should be able to >>> handle fine. If not, then the hashing may need some more tweaks. >>> >>>> >>>> and i'm sure there are more .. >>> >>> Possibly - and it is entirely possible the current hashes are way too >>> conservative. But what I wonder about is if people developing e.g. >>> java.base would find such faster incremental builds useful. >>> >>> Jan >>> >>>> >>>>> >>>>> For a simple "touch Object.java && make", the wall-clock time is less >>>>> then 5s, which sounds interesting: >>>>> --- >>>>> $ touch src/java.base/share/classes/java/lang/Object.java && time make >>>>> Building target 'default (exploded-image)' in configuration >>>>> 'linux-x86_64-server-release' >>>>> Compiling 3028 files for java.base >>>>> Stopping sjavac server >>>>> Finished building target 'default (exploded-image)' in configuration >>>>> 'linux-x86_64-server-release' >>>>> >>>>> real??? 0m3,104s >>>>> user??? 0m5,731s >>>>> sys???? 0m1,086s >>>>> --- >>>>> >>>>> My current prototype is in the jdk/sandbox repository, branch >>>>> "jlahoda-depend-in-module": >>>>> http://hg.openjdk.java.net/jdk/sandbox/shortlog/jlahoda-depend-in-module >>>>> >>>>> I wonder if this would sound interesting to developers working on base >>>>> modules, like java.base. >>>>> >>>>> What do you think? Any ideas/feedback? >>>>> >>>>> Thanks, >>>>> ?????? Jan >>>> >>>> R?mi From lowasser at google.com Wed May 6 18:34:53 2020 From: lowasser at google.com (Louis Wasserman) Date: Wed, 6 May 2020 11:34:53 -0700 Subject: Faster incremental OpenJDK compilation In-Reply-To: References: Message-ID: (cc:+cushon at google.com, responsible for most of this work) We do something like this at Google for all our Java compilations (in production!) with https://github.com/google/turbine, and it is built into our open-source Bazel build system. When A depends on B, we compile B with normal javac in parallel with a Turbine compilation of B, which emits a "header" jar file, which e.g. omits method bodies, skipping type inference and most other things that make javac expensive. Turbine does some amount of canonicalization, but keeps things like static constants that affect downstream compiles. A then compiles against B's headers as soon as they are available, which is usually much faster than waiting for the full compiled jar. Our build system's native caching features only recompile A if B's header jar has changed -- that's how we detect an "interface change," as you put it -- but since the output is an actual jar that A can compile against, we get the added benefit of concurrency in compiling A and B. Turbine has evolved to support the annotation processing API, so the approach works even for complex builds. Before Turbine, we postprocessed the compiled jar to get a header jar and emitted that as a build graph node, which is more directly isomorphic to the system you describe. I don't know if the JDK would want to use Turbine directly, but we can certainly confirm that the concept is sound. The specific granularity of per-file analysis you have in mind might require breaking the module down into groups of files whose dependencies are acyclic, though. On Wed, May 6, 2020 at 8:35 AM Jan Lahoda wrote: > Hi, > > Triggered by Magnus' recent e-mail on adjusting the location of the IDE > files, I looked at possibilities to improve speed of incremental > compilation using make. About 3 years ago, we have sped up incremental > build by only rebuilding modules when API of modules they depend on > changed. But the module which contains modified sources is always > compiled in full. So, for changes in java.base, this change improved the > incremental build time significantly (by not recompiling e.g. > java.desktop), but it can still take many seconds to build java.base > after a trivial change. So, this time, I am thinking of speeding up > module builds by not rebuilding all the source if possible. > > What I am thinking of is a relatively simple approach: detect changed > files in a module and check if their "interface" changed. If it did, > recompile the whole module. If it didn't, only compile the modified > files. As a consequence, a small change inside a method body should lead > to a fast build. Changes outside of method bodies may trigger longer > build, but my hope would be that these would be less common. > > So far, I unfortunately don't know how to efficiently do this as nicely > as the API digests used for inter-module dependencies. The approach that > seems might work is this: the Depend plugin hooks itself into javac > internals, and filters the incoming files - it first parses the modified > ones, and if it cannot find a significant change, it will throw away the > unmodified files, and only compile the modified ones. (In principle, it > could also do dependency analysis, if we at some point decide it is > important.) > > For a simple "touch Object.java && make", the wall-clock time is less > then 5s, which sounds interesting: > --- > $ touch src/java.base/share/classes/java/lang/Object.java && time make > Building target 'default (exploded-image)' in configuration > 'linux-x86_64-server-release' > Compiling 3028 files for java.base > Stopping sjavac server > Finished building target 'default (exploded-image)' in configuration > 'linux-x86_64-server-release' > > real 0m3,104s > user 0m5,731s > sys 0m1,086s > --- > > My current prototype is in the jdk/sandbox repository, branch > "jlahoda-depend-in-module": > http://hg.openjdk.java.net/jdk/sandbox/shortlog/jlahoda-depend-in-module > > I wonder if this would sound interesting to developers working on base > modules, like java.base. > > What do you think? Any ideas/feedback? > > Thanks, > Jan > > -- Louis Wasserman (he/him) -------------- next part -------------- An HTML attachment was scrubbed... URL: From jan.lahoda at oracle.com Thu May 7 08:26:04 2020 From: jan.lahoda at oracle.com (Jan Lahoda) Date: Thu, 7 May 2020 10:26:04 +0200 Subject: Faster incremental OpenJDK compilation In-Reply-To: References: <2f8b5f2f-f037-22fe-544b-4fc37617fa35@oracle.com> Message-ID: On 06. 05. 20 19:23, Jonathan Gibbons wrote: > You could refine the imports by filtering them according to whether they > are 'star-imports' or the simple name matches a simple name that has > been seen by the TreeScanner.? In other words, try and filter out > imports that are definitely not relevant. Good idea. I've tried to do that, and also fixed some bugs in the AST hashing, and enhanced tests. All is still on "jlahoda-depend-in-module" branch in jdk/sandbox. Jan > > -- Jon > > > On 5/6/20 9:49 AM, Jan Lahoda wrote: >> Hi Jon, >> >> Good question. I was first experimenting with hashing Elements, as we >> do currently for the module API hashes, but it was too slow to enter >> the sources (although it is not completely impossible). So I did a new >> hashing based on the AST - basically, it is a TreeScanner sending Tree >> kinds, names and sub-trees into a MessageDigest. It ignores things >> like method bodies, class initializers, and private class members. >> Does not currently skip imports, although that may be seen as too >> conservative. But tweaks to the AST hashing are surely still needed, >> so we can tweak the exact meaning of a "significant change". >> >> Jan >> >> On 06. 05. 20 18:07, Jonathan Gibbons wrote: >>> Jan, >>> >>> This seems like an interesting approach. >>> >>> How are you determining "significant change"?? I could imagine trying >>> to do this by looking at the changed lines, to see if they only >>> within method bodies and comments (for example), or by doing some >>> sort of lexical hash on the signatures, assuming that folk aren't >>> messing with imports to change the resolution of simple type names in >>> the signature. >>> >>> -- Jon >>> >>> On 5/6/20 8:30 AM, Jan Lahoda wrote: >>>> Hi, >>>> >>>> Triggered by Magnus' recent e-mail on adjusting the location of the >>>> IDE files, I looked at possibilities to improve speed of incremental >>>> compilation using make. About 3 years ago, we have sped up >>>> incremental build by only rebuilding modules when API of modules >>>> they depend on changed. But the module which contains modified >>>> sources is always compiled in full. So, for changes in java.base, >>>> this change improved the incremental build time significantly (by >>>> not recompiling e.g. java.desktop), but it can still take many >>>> seconds to build java.base after a trivial change. So, this time, I >>>> am thinking of speeding up module builds by not rebuilding all the >>>> source if possible. >>>> >>>> What I am thinking of is a relatively simple approach: detect >>>> changed files in a module and check if their "interface" changed. If >>>> it did, recompile the whole module. If it didn't, only compile the >>>> modified files. As a consequence, a small change inside a method >>>> body should lead to a fast build. Changes outside of method bodies >>>> may trigger longer build, but my hope would be that these would be >>>> less common. >>>> >>>> So far, I unfortunately don't know how to efficiently do this as >>>> nicely as the API digests used for inter-module dependencies. The >>>> approach that seems might work is this: the Depend plugin hooks >>>> itself into javac internals, and filters the incoming files - it >>>> first parses the modified ones, and if it cannot find a significant >>>> change, it will throw away the unmodified files, and only compile >>>> the modified ones. (In principle, it could also do dependency >>>> analysis, if we at some point decide it is important.) >>>> >>>> For a simple "touch Object.java && make", the wall-clock time is >>>> less then 5s, which sounds interesting: >>>> --- >>>> $ touch src/java.base/share/classes/java/lang/Object.java && time make >>>> Building target 'default (exploded-image)' in configuration >>>> 'linux-x86_64-server-release' >>>> Compiling 3028 files for java.base >>>> Stopping sjavac server >>>> Finished building target 'default (exploded-image)' in configuration >>>> 'linux-x86_64-server-release' >>>> >>>> real??? 0m3,104s >>>> user??? 0m5,731s >>>> sys???? 0m1,086s >>>> --- >>>> >>>> My current prototype is in the jdk/sandbox repository, branch >>>> "jlahoda-depend-in-module": >>>> http://hg.openjdk.java.net/jdk/sandbox/shortlog/jlahoda-depend-in-module >>>> >>>> >>>> I wonder if this would sound interesting to developers working on >>>> base modules, like java.base. >>>> >>>> What do you think? Any ideas/feedback? >>>> >>>> Thanks, >>>> ???? Jan >>>> From magnus.ihse.bursie at oracle.com Thu May 7 15:48:04 2020 From: magnus.ihse.bursie at oracle.com (Magnus Ihse Bursie) Date: Thu, 7 May 2020 17:48:04 +0200 Subject: RFR: JDK-8241616: Timestamps on ct.sym entries lead to non-reproducible builds In-Reply-To: References: <799e284b-eb3e-a582-bcd6-93305ec62bcd@oracle.com> Message-ID: <905baa80-ad30-5fb9-8cdd-2cdcf71011a1@oracle.com> On 2020-04-30 14:50, Jan Lahoda wrote: > On 30. 04. 20 14:29, Magnus Ihse Bursie wrote: >> On 2020-04-30 12:41, Alan Bateman wrote: >>> >>> >>> On 30/04/2020 08:03, Jan Lahoda wrote: >>>> Hi, >>>> >>>> The building of lib/ct.sym is not reproducible, due to timestamps >>>> of files inside the file (which is basically a zip file). >>>> >>>> The proposed solution is to use a constant timestamp for the files >>>> inside the ct.sym file. To simplify the construction, the >>>> CreateSymbols tool does not produce files on the filesystem >>>> anymore, but rather constructs the ct.sym directly. >>>> >>>> Proposed webrev: >>>> http://cr.openjdk.java.net/~jlahoda/8241616/webrev.00/ >>>> JBS: https://bugs.openjdk.java.net/browse/JDK-8241616 >>> 1587656816359 = 2020-04-23T15:46:56.359Z. Is there anything >>> significant with this timestamp? Magnus might have suggestions but >>> maybe it would be saner to pick up the value of DEFAULT_VERSION_DATE. >> There is an officially suggested standard, SOURCE_DATE_EPOCH for >> reproducible builds. [1] I have long-term vision to include this in >> the entire JDK build, but has of yet not even started on that. :-( >> >> This might be a good first step to start using it. I can assist in >> making the needed makefile changes to have that environment variable >> available. > > I think a standard mechanism would be great. I don't think this patch > is very urgent, so I am happy to wait some time (rather than add a > timestamp to symbols and then remove it when there's a standard > mechanism). JDK-8244592 is now in mainline, and you can start relying on SOURCE_DATE_EPOCH being present in the environment when building. /Magnus > > Thanks, > ??? Jan > >> >> /Magnus >> >> [1] https://reproducible-builds.org/specs/source-date-epoch/ >>> >>> There is some curious code that generates the timestamp with: >>> ?? Long.toString(FileTime.from(Instant.now()).toMillis()) >>> Could this use Instant.now().toEpochMilli() instead? >>> >>> -Alan >>> >>> >> From floss at apjanke.net Fri May 8 20:27:05 2020 From: floss at apjanke.net (Andrew Janke) Date: Fri, 8 May 2020 16:27:05 -0400 Subject: NPE in javac reproduction - JDK-8216202 In-Reply-To: References: Message-ID: <33e64df2-869d-5582-ed73-e8d8f8973ea4@apjanke.net> Hi, OpenJDK folks, I have some info about a bug in the OpenJDK bugs database, https://bugs.openjdk.java.net/browse/JDK-8216202, but I don't have Author status so I can't comment on the issue. I heard from help at openjdk.java.net that this might be the right place to send it. My project ANTLRWorks2-Jank has code that is running into what looks like the NullPointerException reported there, and can reproduce the error consistently. You can find the code in the branch mavenize/ditch-ATN-simulator at https://github.com/apjanke/antlrworks2-jank/tree/mavenize/ditch-ATN-simulator. The tags NPE-during-compile-02 and NPE-during-compile-03 are particular versions which reliably reproduce this NPE: https://github.com/apjanke/antlrworks2-jank/tree/NPE-during-compile-02. To reproduce the error, clone the repo, check out the tag NPE-during-compile-02 or NPE-during-compile-03, and run `mvn -e compile` in the root of the repo. The NPE seems to happen with OpenJDK 9, 11, and 13.0.2 (selected by setting $JAVA_HOME before calling mvn). This is on macOS 10.14.6. My own issue report: https://github.com/apjanke/antlrworks2-jank/issues/1 When I change the maven-compiler-plugin to 11 or 13, the error changes to an AssertionError: [INFO] works-editor-antlr4 ................................ FAILURE [? 0.597 s] [INFO] antlr-works-editor ................................. SKIPPED [...] --------------------------------------------------- Exception in thread "main" java.lang.AssertionError ??? at jdk.compiler/com.sun.tools.javac.util.Assert.error(Assert.java:155) ??? at jdk.compiler/com.sun.tools.javac.util.Assert.check(Assert.java:46) ??? at jdk.compiler/com.sun.tools.javac.comp.Modules.enter(Modules.java:247) ??? at jdk.compiler/com.sun.tools.javac.main.JavaCompiler.readSourceFile(JavaCompiler.java:836) ??? at jdk.compiler/com.sun.tools.javac.processing.JavacProcessingEnvironment$ImplicitCompleter.complete(JavacProcessingEnvironment.java:1576) ??? at jdk.compiler/com.sun.tools.javac.code.Symbol.complete(Symbol.java:657) ??? at jdk.compiler/com.sun.tools.javac.code.Symbol$ClassSymbol.complete(Symbol.java:1356) ??? at jdk.compiler/com.sun.tools.javac.code.Type$ClassType.complete(Type.java:1157) ??? at jdk.compiler/com.sun.tools.javac.code.Type$ClassType.getTypeArguments(Type.java:1083) ??? at jdk.compiler/com.sun.tools.javac.code.Printer.visitClassType(Printer.java:237) ??? at jdk.compiler/com.sun.tools.javac.code.Printer.visitClassType(Printer.java:52) ??? at jdk.compiler/com.sun.tools.javac.code.Type$ClassType.accept(Type.java:1010) ??? at jdk.compiler/com.sun.tools.javac.code.Printer.visit(Printer.java:136) ??? at jdk.compiler/com.sun.tools.javac.util.AbstractDiagnosticFormatter.formatArgument(AbstractDiagnosticFormatter.java:199) ??? at jdk.compiler/com.sun.tools.javac.util.AbstractDiagnosticFormatter.formatArguments(AbstractDiagnosticFormatter.java:167) ??? at jdk.compiler/com.sun.tools.javac.util.BasicDiagnosticFormatter.formatMessage(BasicDiagnosticFormatter.java:111) ??? at jdk.compiler/com.sun.tools.javac.util.BasicDiagnosticFormatter.formatMessage(BasicDiagnosticFormatter.java:67) ??? at jdk.compiler/com.sun.tools.javac.util.AbstractDiagnosticFormatter.formatArgument(AbstractDiagnosticFormatter.java:185) ??? at jdk.compiler/com.sun.tools.javac.util.AbstractDiagnosticFormatter.formatArguments(AbstractDiagnosticFormatter.java:167) ??? at jdk.compiler/com.sun.tools.javac.util.BasicDiagnosticFormatter.formatMessage(BasicDiagnosticFormatter.java:111) ??? at jdk.compiler/com.sun.tools.javac.util.BasicDiagnosticFormatter.formatMessage(BasicDiagnosticFormatter.java:67) ??? at jdk.compiler/com.sun.tools.javac.util.JCDiagnostic.getMessage(JCDiagnostic.java:788) ??? at jdk.compiler/com.sun.tools.javac.api.ClientCodeWrapper$DiagnosticSourceUnwrapper.getMessage(ClientCodeWrapper.java:835) ??? at org.codehaus.plexus.compiler.javac.JavaxToolsCompiler.compileInProcess(JavaxToolsCompiler.java:131) ??? at org.codehaus.plexus.compiler.javac.JavacCompiler.performCompile(JavacCompiler.java:174) ??? at org.apache.maven.plugin.compiler.AbstractCompilerMojo.execute(AbstractCompilerMojo.java:1134) ??? at org.apache.maven.plugin.compiler.CompilerMojo.execute(CompilerMojo.java:187) ??? at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:137) ??? at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:210) ??? at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:156) ??? at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:148) ??? at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:117) ??? at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:81) ??? at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build(SingleThreadedBuilder.java:56) ??? at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:128) ??? at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:305) ??? at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:192) ??? at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:105) ??? at org.apache.maven.cli.MavenCli.execute(MavenCli.java:957) ??? at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:289) ??? at org.apache.maven.cli.MavenCli.main(MavenCli.java:193) ??? at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ??? at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ??? at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ??? at java.base/java.lang.reflect.Method.invoke(Method.java:567) ??? at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:282) ??? at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:225) ??? at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:406) ??? at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:347) Find debug logs attached. Cheers, Andrew Janke -------------- next part -------------- Apache Maven 3.6.3 (cecedd343002696d0abb50b32b541b8a6ba2883f) Maven home: /usr/local/Cellar/maven/3.6.3_1/libexec Java version: 13.0.2, vendor: N/A, runtime: /usr/local/Cellar/openjdk/13.0.2+8_2/libexec/openjdk.jdk/Contents/Home Default locale: en_US, platform encoding: UTF-8 OS name: "mac os x", version: "10.14.6", arch: "x86_64", family: "mac" [DEBUG] Created new class realm maven.api [DEBUG] Importing foreign packages into class realm maven.api [DEBUG] Imported: javax.annotation.* < plexus.core [DEBUG] Imported: javax.annotation.security.* < plexus.core [DEBUG] Imported: javax.enterprise.inject.* < plexus.core [DEBUG] Imported: javax.enterprise.util.* < plexus.core [DEBUG] Imported: javax.inject.* < plexus.core [DEBUG] Imported: org.apache.maven.* < plexus.core [DEBUG] Imported: org.apache.maven.artifact < plexus.core [DEBUG] Imported: org.apache.maven.classrealm < plexus.core [DEBUG] Imported: org.apache.maven.cli < plexus.core [DEBUG] Imported: org.apache.maven.configuration < plexus.core [DEBUG] Imported: org.apache.maven.exception < plexus.core [DEBUG] Imported: org.apache.maven.execution < plexus.core [DEBUG] Imported: org.apache.maven.execution.scope < plexus.core [DEBUG] Imported: org.apache.maven.lifecycle < plexus.core [DEBUG] Imported: org.apache.maven.model < plexus.core [DEBUG] Imported: org.apache.maven.monitor < plexus.core [DEBUG] Imported: org.apache.maven.plugin < plexus.core [DEBUG] Imported: org.apache.maven.profiles < plexus.core [DEBUG] Imported: org.apache.maven.project < plexus.core [DEBUG] Imported: org.apache.maven.reporting < plexus.core [DEBUG] Imported: org.apache.maven.repository < plexus.core [DEBUG] Imported: org.apache.maven.rtinfo < plexus.core [DEBUG] Imported: org.apache.maven.settings < plexus.core [DEBUG] Imported: org.apache.maven.toolchain < plexus.core [DEBUG] Imported: org.apache.maven.usability < plexus.core [DEBUG] Imported: org.apache.maven.wagon.* < plexus.core [DEBUG] Imported: org.apache.maven.wagon.authentication < plexus.core [DEBUG] Imported: org.apache.maven.wagon.authorization < plexus.core [DEBUG] Imported: org.apache.maven.wagon.events < plexus.core [DEBUG] Imported: org.apache.maven.wagon.observers < plexus.core [DEBUG] Imported: org.apache.maven.wagon.proxy < plexus.core [DEBUG] Imported: org.apache.maven.wagon.repository < plexus.core [DEBUG] Imported: org.apache.maven.wagon.resource < plexus.core [DEBUG] Imported: org.codehaus.classworlds < plexus.core [DEBUG] Imported: org.codehaus.plexus.* < plexus.core [DEBUG] Imported: org.codehaus.plexus.classworlds < plexus.core [DEBUG] Imported: org.codehaus.plexus.component < plexus.core [DEBUG] Imported: org.codehaus.plexus.configuration < plexus.core [DEBUG] Imported: org.codehaus.plexus.container < plexus.core [DEBUG] Imported: org.codehaus.plexus.context < plexus.core [DEBUG] Imported: org.codehaus.plexus.lifecycle < plexus.core [DEBUG] Imported: org.codehaus.plexus.logging < plexus.core [DEBUG] Imported: org.codehaus.plexus.personality < plexus.core [DEBUG] Imported: org.codehaus.plexus.util.xml.Xpp3Dom < plexus.core [DEBUG] Imported: org.codehaus.plexus.util.xml.pull.XmlPullParser < plexus.core [DEBUG] Imported: org.codehaus.plexus.util.xml.pull.XmlPullParserException < plexus.core [DEBUG] Imported: org.codehaus.plexus.util.xml.pull.XmlSerializer < plexus.core [DEBUG] Imported: org.eclipse.aether.* < plexus.core [DEBUG] Imported: org.eclipse.aether.artifact < plexus.core [DEBUG] Imported: org.eclipse.aether.collection < plexus.core [DEBUG] Imported: org.eclipse.aether.deployment < plexus.core [DEBUG] Imported: org.eclipse.aether.graph < plexus.core [DEBUG] Imported: org.eclipse.aether.impl < plexus.core [DEBUG] Imported: org.eclipse.aether.installation < plexus.core [DEBUG] Imported: org.eclipse.aether.internal.impl < plexus.core [DEBUG] Imported: org.eclipse.aether.metadata < plexus.core [DEBUG] Imported: org.eclipse.aether.repository < plexus.core [DEBUG] Imported: org.eclipse.aether.resolution < plexus.core [DEBUG] Imported: org.eclipse.aether.spi < plexus.core [DEBUG] Imported: org.eclipse.aether.transfer < plexus.core [DEBUG] Imported: org.eclipse.aether.version < plexus.core [DEBUG] Imported: org.fusesource.jansi.* < plexus.core [DEBUG] Imported: org.slf4j.* < plexus.core [DEBUG] Imported: org.slf4j.event.* < plexus.core [DEBUG] Imported: org.slf4j.helpers.* < plexus.core [DEBUG] Imported: org.slf4j.spi.* < plexus.core [DEBUG] Populating class realm maven.api [INFO] Error stacktraces are turned on. [DEBUG] Message scheme: color [DEBUG] Message styles: debug info warning error success failure strong mojo project [DEBUG] Reading global settings from /usr/local/Cellar/maven/3.6.3_1/libexec/conf/settings.xml [DEBUG] Reading user settings from /Users/janke/.m2/settings.xml [DEBUG] Reading global toolchains from /usr/local/Cellar/maven/3.6.3_1/libexec/conf/toolchains.xml [DEBUG] Reading user toolchains from /Users/janke/.m2/toolchains.xml [DEBUG] Using local repository at /Users/janke/.m2/repository [DEBUG] Using manager EnhancedLocalRepositoryManager with priority 10.0 for /Users/janke/.m2/repository [INFO] Scanning for projects... [DEBUG] Extension realms for project net.apjanke.antlrworks-jank:antlrworks-jank:pom:2.6.0-SNAPSHOT: (none) [DEBUG] Looking up lifecycle mappings for packaging pom from ClassRealm[plexus.core, parent: null] [DEBUG] Extension realms for project net.apjanke.antlrworks-jank:editor-completionext:jar:2.6.0-SNAPSHOT: (none) [DEBUG] Looking up lifecycle mappings for packaging jar from ClassRealm[plexus.core, parent: null] [DEBUG] Extension realms for project net.apjanke.antlrworks-jank:editor-containingfolder:jar:2.6.0-SNAPSHOT: (none) [DEBUG] Looking up lifecycle mappings for packaging jar from ClassRealm[plexus.core, parent: null] [DEBUG] Dependency collection stats: {ConflictMarker.analyzeTime=957250, ConflictMarker.markTime=356351, ConflictMarker.nodeCount=207, ConflictIdSorter.graphTime=518019, ConflictIdSorter.topsortTime=262275, ConflictIdSorter.conflictIdCount=50, ConflictIdSorter.conflictIdCycleCount=0, ConflictResolver.totalTime=4148758, ConflictResolver.conflictItemCount=116, DefaultDependencyCollector.collectTime=339084786, DefaultDependencyCollector.transformTime=7873488} [DEBUG] org.codehaus.mojo:nbm-maven-plugin:jar:3.13 [DEBUG] org.apache.maven:maven-artifact:jar:2.2.0:compile [DEBUG] org.apache.maven:maven-plugin-api:jar:2.0.1:compile [DEBUG] org.apache.maven.plugin-tools:maven-plugin-annotations:jar:3.0:compile [DEBUG] org.apache.ant:ant:jar:1.9.2:compile [DEBUG] org.apache.ant:ant-launcher:jar:1.9.2:compile [DEBUG] org.apache.maven:maven-project:jar:2.2.0:compile [DEBUG] org.apache.maven:maven-settings:jar:2.2.0:compile [DEBUG] org.apache.maven:maven-profile:jar:2.2.0:compile [DEBUG] org.apache.maven:maven-plugin-registry:jar:2.2.0:compile [DEBUG] org.codehaus.plexus:plexus-interpolation:jar:1.11:compile [DEBUG] org.codehaus.plexus:plexus-utils:jar:3.0:compile [DEBUG] org.codehaus.plexus:plexus-archiver:jar:1.2:compile [DEBUG] org.apache.maven.shared:maven-dependency-tree:jar:2.1:compile [DEBUG] org.codehaus.plexus:plexus-component-annotations:jar:1.5.5:compile [DEBUG] org.eclipse.aether:aether-util:jar:0.9.0.M2:compile [DEBUG] org.apache.maven.shared:maven-dependency-analyzer:jar:1.2:compile [DEBUG] asm:asm:jar:3.0:compile [DEBUG] org.apache.maven:maven-model:jar:2.2.0:compile [DEBUG] org.apache.maven:maven-artifact-manager:jar:2.2.0:compile [DEBUG] org.apache.maven:maven-repository-metadata:jar:2.2.0:compile [DEBUG] backport-util-concurrent:backport-util-concurrent:jar:3.1:compile [DEBUG] org.codehaus.plexus:plexus-container-default:jar:1.0-alpha-9-stable-1:compile [DEBUG] junit:junit:jar:4.10:test (scope managed from default) (version managed from default) [DEBUG] org.hamcrest:hamcrest-core:jar:1.1:test [DEBUG] classworlds:classworlds:jar:1.1-alpha-2:compile [DEBUG] org.apache.maven.shared:maven-filtering:jar:1.0:compile [DEBUG] org.apache.maven:maven-monitor:jar:2.0.6:compile [DEBUG] org.sonatype.plexus:plexus-build-api:jar:0.0.4:compile [DEBUG] org.apache.maven:maven-core:jar:2.2.0:compile [DEBUG] org.apache.maven:maven-plugin-parameter-documenter:jar:2.2.0:compile [DEBUG] org.slf4j:slf4j-jdk14:jar:1.5.6:runtime [DEBUG] org.slf4j:slf4j-api:jar:1.5.6:runtime [DEBUG] org.slf4j:jcl-over-slf4j:jar:1.5.6:runtime [DEBUG] org.apache.maven.reporting:maven-reporting-api:jar:2.2.0:compile [DEBUG] org.apache.maven.doxia:doxia-sink-api:jar:1.1:compile [DEBUG] org.apache.maven.doxia:doxia-logging-api:jar:1.1:compile [DEBUG] org.apache.maven:maven-error-diagnostics:jar:2.2.0:compile [DEBUG] commons-cli:commons-cli:jar:1.2:compile [DEBUG] org.apache.maven:maven-plugin-descriptor:jar:2.2.0:compile [DEBUG] org.codehaus.plexus:plexus-interactivity-api:jar:1.0-alpha-4:compile [DEBUG] org.sonatype.plexus:plexus-sec-dispatcher:jar:1.3:compile [DEBUG] org.sonatype.plexus:plexus-cipher:jar:1.4:compile [DEBUG] javax.help:javahelp:jar:2.0.05:runtime [DEBUG] org.codehaus.mojo:nbm-maven-harness:jar:8.0-beta:compile [DEBUG] org.codehaus.plexus:plexus-io:jar:2.0.2:compile [DEBUG] org.codehaus.mojo:nb-shared:jar:1.2:compile [DEBUG] com.google.guava:guava:jar:12.0:compile [DEBUG] com.google.code.findbugs:jsr305:jar:1.3.9:compile [DEBUG] Created new class realm extension>org.codehaus.mojo:nbm-maven-plugin:3.13 [DEBUG] Importing foreign packages into class realm extension>org.codehaus.mojo:nbm-maven-plugin:3.13 [DEBUG] Imported: < maven.api [DEBUG] Populating class realm extension>org.codehaus.mojo:nbm-maven-plugin:3.13 [DEBUG] Included: org.codehaus.mojo:nbm-maven-plugin:jar:3.13 [DEBUG] Included: org.apache.maven.plugin-tools:maven-plugin-annotations:jar:3.0 [DEBUG] Included: org.apache.ant:ant:jar:1.9.2 [DEBUG] Included: org.apache.ant:ant-launcher:jar:1.9.2 [DEBUG] Included: org.codehaus.plexus:plexus-interpolation:jar:1.11 [DEBUG] Included: org.codehaus.plexus:plexus-utils:jar:3.0 [DEBUG] Included: org.codehaus.plexus:plexus-archiver:jar:1.2 [DEBUG] Included: org.apache.maven.shared:maven-dependency-tree:jar:2.1 [DEBUG] Included: org.codehaus.plexus:plexus-component-annotations:jar:1.5.5 [DEBUG] Included: org.eclipse.aether:aether-util:jar:0.9.0.M2 [DEBUG] Included: org.apache.maven.shared:maven-dependency-analyzer:jar:1.2 [DEBUG] Included: asm:asm:jar:3.0 [DEBUG] Included: backport-util-concurrent:backport-util-concurrent:jar:3.1 [DEBUG] Included: org.apache.maven.shared:maven-filtering:jar:1.0 [DEBUG] Included: org.sonatype.plexus:plexus-build-api:jar:0.0.4 [DEBUG] Included: org.slf4j:slf4j-jdk14:jar:1.5.6 [DEBUG] Included: org.slf4j:jcl-over-slf4j:jar:1.5.6 [DEBUG] Included: org.apache.maven.reporting:maven-reporting-api:jar:2.2.0 [DEBUG] Included: org.apache.maven.doxia:doxia-sink-api:jar:1.1 [DEBUG] Included: org.apache.maven.doxia:doxia-logging-api:jar:1.1 [DEBUG] Included: commons-cli:commons-cli:jar:1.2 [DEBUG] Included: org.codehaus.plexus:plexus-interactivity-api:jar:1.0-alpha-4 [DEBUG] Included: org.sonatype.plexus:plexus-sec-dispatcher:jar:1.3 [DEBUG] Included: org.sonatype.plexus:plexus-cipher:jar:1.4 [DEBUG] Included: javax.help:javahelp:jar:2.0.05 [DEBUG] Included: org.codehaus.mojo:nbm-maven-harness:jar:8.0-beta [DEBUG] Included: org.codehaus.plexus:plexus-io:jar:2.0.2 [DEBUG] Included: org.codehaus.mojo:nb-shared:jar:1.2 [DEBUG] Included: com.google.guava:guava:jar:12.0 [DEBUG] Included: com.google.code.findbugs:jsr305:jar:1.3.9 [DEBUG] Extension realms for project net.apjanke.antlrworks-jank:antlr-works-netbeans:nbm:2.6.0-SNAPSHOT: [ClassRealm[extension>org.codehaus.mojo:nbm-maven-plugin:3.13, parent: jdk.internal.loader.ClassLoaders$AppClassLoader at 55054057]] [DEBUG] Created new class realm project>net.apjanke.antlrworks-jank:antlr-works-netbeans:2.6.0-SNAPSHOT [DEBUG] Populating class realm project>net.apjanke.antlrworks-jank:antlr-works-netbeans:2.6.0-SNAPSHOT [DEBUG] Looking up lifecycle mappings for packaging nbm from ClassRealm[project>net.apjanke.antlrworks-jank:antlr-works-netbeans:2.6.0-SNAPSHOT, parent: ClassRealm[maven.api, parent: null]] [DEBUG] Extension realms for project net.apjanke.antlrworks-jank:antlr-works-editor:nbm:2.6.0-SNAPSHOT: [ClassRealm[extension>org.codehaus.mojo:nbm-maven-plugin:3.13, parent: jdk.internal.loader.ClassLoaders$AppClassLoader at 55054057]] [DEBUG] Looking up lifecycle mappings for packaging nbm from ClassRealm[project>net.apjanke.antlrworks-jank:antlr-works-netbeans:2.6.0-SNAPSHOT, parent: ClassRealm[maven.api, parent: null]] [DEBUG] Extension realms for project net.apjanke.antlrworks-jank:tvl-editor-actions:jar:2.6.0-SNAPSHOT: (none) [DEBUG] Looking up lifecycle mappings for packaging jar from ClassRealm[plexus.core, parent: null] [DEBUG] Extension realms for project net.apjanke.antlrworks-jank:tvl-editor-whitespace:jar:2.6.0-SNAPSHOT: (none) [DEBUG] Looking up lifecycle mappings for packaging jar from ClassRealm[plexus.core, parent: null] [DEBUG] Extension realms for project net.apjanke.antlrworks-jank:works-editor-antlr3:jar:2.6.0-SNAPSHOT: (none) [DEBUG] Looking up lifecycle mappings for packaging jar from ClassRealm[plexus.core, parent: null] [DEBUG] Extension realms for project net.apjanke.antlrworks-jank:works-editor-antlr4:jar:2.6.0-SNAPSHOT: (none) [DEBUG] Looking up lifecycle mappings for packaging jar from ClassRealm[plexus.core, parent: null] [INFO] ------------------------------------------------------------------------ [INFO] Reactor Build Order: [INFO] [INFO] ANTLRWorks2-Jank [pom] [INFO] editor-completionext [jar] [INFO] editor-containingfolder [jar] [INFO] antlr-works-netbeans [nbm] [INFO] tvl-editor-actions [jar] [INFO] works-editor-antlr4 [jar] [INFO] antlr-works-editor [nbm] [INFO] tvl-editor-whitespace [jar] [INFO] works-editor-antlr3 [jar] [DEBUG] === REACTOR BUILD PLAN ================================================ [DEBUG] Project: net.apjanke.antlrworks-jank:antlrworks-jank:pom:2.6.0-SNAPSHOT [DEBUG] Tasks: [compile] [DEBUG] Style: Regular [DEBUG] ----------------------------------------------------------------------- [DEBUG] Project: net.apjanke.antlrworks-jank:editor-completionext:jar:2.6.0-SNAPSHOT [DEBUG] Tasks: [compile] [DEBUG] Style: Regular [DEBUG] ----------------------------------------------------------------------- [DEBUG] Project: net.apjanke.antlrworks-jank:editor-containingfolder:jar:2.6.0-SNAPSHOT [DEBUG] Tasks: [compile] [DEBUG] Style: Regular [DEBUG] ----------------------------------------------------------------------- [DEBUG] Project: net.apjanke.antlrworks-jank:antlr-works-netbeans:nbm:2.6.0-SNAPSHOT [DEBUG] Tasks: [compile] [DEBUG] Style: Regular [DEBUG] ----------------------------------------------------------------------- [DEBUG] Project: net.apjanke.antlrworks-jank:tvl-editor-actions:jar:2.6.0-SNAPSHOT [DEBUG] Tasks: [compile] [DEBUG] Style: Regular [DEBUG] ----------------------------------------------------------------------- [DEBUG] Project: net.apjanke.antlrworks-jank:works-editor-antlr4:jar:2.6.0-SNAPSHOT [DEBUG] Tasks: [compile] [DEBUG] Style: Regular [DEBUG] ----------------------------------------------------------------------- [DEBUG] Project: net.apjanke.antlrworks-jank:antlr-works-editor:nbm:2.6.0-SNAPSHOT [DEBUG] Tasks: [compile] [DEBUG] Style: Regular [DEBUG] ----------------------------------------------------------------------- [DEBUG] Project: net.apjanke.antlrworks-jank:tvl-editor-whitespace:jar:2.6.0-SNAPSHOT [DEBUG] Tasks: [compile] [DEBUG] Style: Regular [DEBUG] ----------------------------------------------------------------------- [DEBUG] Project: net.apjanke.antlrworks-jank:works-editor-antlr3:jar:2.6.0-SNAPSHOT [DEBUG] Tasks: [compile] [DEBUG] Style: Regular [DEBUG] ======================================================================= [INFO] [INFO] ------------< net.apjanke.antlrworks-jank:antlrworks-jank >------------- [INFO] Building ANTLRWorks2-Jank 2.6.0-SNAPSHOT [1/9] [INFO] --------------------------------[ pom ]--------------------------------- [DEBUG] Lifecycle default -> [validate, initialize, generate-sources, process-sources, generate-resources, process-resources, compile, process-classes, generate-test-sources, process-test-sources, generate-test-resources, process-test-resources, test-compile, process-test-classes, test, prepare-package, package, pre-integration-test, integration-test, post-integration-test, verify, install, deploy] [DEBUG] Lifecycle clean -> [pre-clean, clean, post-clean] [DEBUG] Lifecycle site -> [pre-site, site, post-site, site-deploy] [DEBUG] === PROJECT BUILD PLAN ================================================ [DEBUG] Project: net.apjanke.antlrworks-jank:antlrworks-jank:2.6.0-SNAPSHOT [DEBUG] Dependencies (collect): [] [DEBUG] Dependencies (resolve): [] [DEBUG] Repositories (dependencies): [netbeans (http://bits.netbeans.org/nexus/content/groups/netbeans/, default, releases+snapshots), atricore (http://repository.atricore.org/m2-release-repository/, default, releases+snapshots), central (https://repo.maven.apache.org/maven2, default, releases)] [DEBUG] Repositories (plugins) : [central (https://repo.maven.apache.org/maven2, default, releases)] [DEBUG] ======================================================================= [INFO] [INFO] ----------< net.apjanke.antlrworks-jank:editor-completionext >---------- [INFO] Building editor-completionext 2.6.0-SNAPSHOT [2/9] [INFO] --------------------------------[ jar ]--------------------------------- [DEBUG] Lifecycle default -> [validate, initialize, generate-sources, process-sources, generate-resources, process-resources, compile, process-classes, generate-test-sources, process-test-sources, generate-test-resources, process-test-resources, test-compile, process-test-classes, test, prepare-package, package, pre-integration-test, integration-test, post-integration-test, verify, install, deploy] [DEBUG] Lifecycle clean -> [pre-clean, clean, post-clean] [DEBUG] Lifecycle site -> [pre-site, site, post-site, site-deploy] [DEBUG] Lifecycle default -> [validate, initialize, generate-sources, process-sources, generate-resources, process-resources, compile, process-classes, generate-test-sources, process-test-sources, generate-test-resources, process-test-resources, test-compile, process-test-classes, test, prepare-package, package, pre-integration-test, integration-test, post-integration-test, verify, install, deploy] [DEBUG] Lifecycle clean -> [pre-clean, clean, post-clean] [DEBUG] Lifecycle site -> [pre-site, site, post-site, site-deploy] [DEBUG] Lifecycle default -> [validate, initialize, generate-sources, process-sources, generate-resources, process-resources, compile, process-classes, generate-test-sources, process-test-sources, generate-test-resources, process-test-resources, test-compile, process-test-classes, test, prepare-package, package, pre-integration-test, integration-test, post-integration-test, verify, install, deploy] [DEBUG] Lifecycle clean -> [pre-clean, clean, post-clean] [DEBUG] Lifecycle site -> [pre-site, site, post-site, site-deploy] [DEBUG] === PROJECT BUILD PLAN ================================================ [DEBUG] Project: net.apjanke.antlrworks-jank:editor-completionext:2.6.0-SNAPSHOT [DEBUG] Dependencies (collect): [] [DEBUG] Dependencies (resolve): [compile] [DEBUG] Repositories (dependencies): [netbeans (http://bits.netbeans.org/nexus/content/groups/netbeans/, default, releases+snapshots), atricore (http://repository.atricore.org/m2-release-repository/, default, releases+snapshots), central (https://repo.maven.apache.org/maven2, default, releases)] [DEBUG] Repositories (plugins) : [central (https://repo.maven.apache.org/maven2, default, releases)] [DEBUG] ----------------------------------------------------------------------- [DEBUG] Goal: org.apache.maven.plugins:maven-resources-plugin:2.6:resources (default-resources) [DEBUG] Style: Regular [DEBUG] Configuration: ${encoding} ${maven.resources.escapeString} ${maven.resources.escapeWindowsPaths} ${maven.resources.includeEmptyDirs} ${maven.resources.overwrite} ${maven.resources.supportMultiLineFiltering} [DEBUG] ----------------------------------------------------------------------- [DEBUG] Goal: org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile (default-compile) [DEBUG] Style: Regular [DEBUG] Configuration: ${maven.compiler.compilerId} ${maven.compiler.compilerReuseStrategy} ${maven.compiler.compilerVersion} ${maven.compiler.debug} ${maven.compiler.debuglevel} ${encoding} ${maven.compiler.executable} ${maven.compiler.failOnError} ${maven.compiler.failOnWarning} ${maven.compiler.forceJavacCompilerUse} ${maven.compiler.fork} ${maven.compiler.maxmem} ${maven.compiler.meminitial} ${maven.compiler.optimize} ${maven.compiler.parameters} ${maven.compiler.release} ${maven.compiler.showDeprecation} ${maven.compiler.showWarnings} ${maven.main.skip} ${maven.compiler.skipMultiThreadWarning} 1.8 ${lastModGranularityMs} 1.8 ${maven.compiler.useIncrementalCompilation} ${maven.compiler.verbose} [DEBUG] ======================================================================= [DEBUG] Dependency collection stats: {ConflictMarker.analyzeTime=891191, ConflictMarker.markTime=376867, ConflictMarker.nodeCount=557, ConflictIdSorter.graphTime=482187, ConflictIdSorter.topsortTime=330510, ConflictIdSorter.conflictIdCount=80, ConflictIdSorter.conflictIdCycleCount=1, ConflictResolver.totalTime=4858024, ConflictResolver.conflictItemCount=555, DefaultDependencyCollector.collectTime=127373601, DefaultDependencyCollector.transformTime=7044664} [DEBUG] net.apjanke.antlrworks-jank:editor-completionext:jar:2.6.0-SNAPSHOT [DEBUG] javax.annotation:javax.annotation-api:jar:1.3.2:compile [DEBUG] org.netbeans.api:org-netbeans-api-annotations-common:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-spi-palette:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-awt:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-dialogs:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-explorer:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-swing-tabcontrol:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-filesystems:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-loaders:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-api-scripting:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-api-templates:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-modules:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-nodes:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-text:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-util:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-util-lookup:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-windows:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-editor-util:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-editor:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-api-progress:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-api-progress-nb:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-editor-document:jar:RELEASE112:compile [DEBUG] org.netbeans.modules:org-netbeans-modules-editor-fold-nbui:jar:RELEASE112:runtime [DEBUG] org.netbeans.api:org-netbeans-modules-editor-guards:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-editor-indent:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-editor-lib2:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-lexer:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-actions:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-filesystems-nb:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-editor-fold:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-editor-settings-lib:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-util-ui:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-editor-lib:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-editor-mimelookup:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-editor-settings:jar:RELEASE112:compile [DEBUG] org.netbeans.modules:org-netbeans-modules-editor-settings-storage:jar:RELEASE112:compile [DEBUG] org.netbeans.modules:org-netbeans-modules-options-keymap:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-options-api:jar:RELEASE112:compile [DEBUG] org.netbeans.modules:org-netbeans-core:jar:RELEASE112:runtime [DEBUG] org.netbeans.modules:org-netbeans-bootstrap:jar:RELEASE112:runtime [DEBUG] org.netbeans.api:org-netbeans-modules-keyring:jar:RELEASE112:runtime [DEBUG] org.netbeans.api:org-netbeans-swing-plaf:jar:RELEASE112:runtime [DEBUG] org.netbeans.api:org-openide-io:jar:RELEASE112:runtime [DEBUG] org.netbeans.api:org-netbeans-api-intent:jar:RELEASE112:runtime [DEBUG] org.netbeans.api:org-netbeans-api-io:jar:RELEASE112:runtime [DEBUG] org.netbeans.modules:org-netbeans-core-startup:jar:RELEASE112:runtime [DEBUG] org.netbeans.api:org-netbeans-libs-asm:jar:RELEASE112:runtime [DEBUG] org.ow2.asm:asm-all:jar:5.0.1:runtime [DEBUG] org.netbeans.modules:org-netbeans-core-startup-base:jar:RELEASE112:runtime [DEBUG] org.netbeans.api:org-netbeans-spi-quicksearch:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-swing-outline:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-spi-editor-hints-projects:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-editor-tools-storage:jar:RELEASE112:compile [DEBUG] org.netbeans.modules:org-netbeans-modules-options-editor:jar:RELEASE112:runtime [DEBUG] org.netbeans.api:org-netbeans-modules-projectapi:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-projectuiapi:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-spi-editor-hints:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-spi-navigator:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-parsing-indexing:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-api-java-classpath:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-libs-lucene:jar:RELEASE112:compile [DEBUG] org.apache.lucene:lucene-core:jar:3.5.0:compile [DEBUG] org.netbeans.api:org-netbeans-modules-parsing-api:jar:RELEASE112:compile [DEBUG] org.netbeans.modules:org-netbeans-modules-parsing-lucene:jar:RELEASE112:runtime [DEBUG] org.netbeans.modules:org-netbeans-modules-masterfs:jar:RELEASE112:runtime [DEBUG] org.netbeans.modules:org-netbeans-modules-project-indexingbridge:jar:RELEASE112:runtime [DEBUG] org.netbeans.api:org-netbeans-modules-projectuiapi-base:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-queries:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-spi-tasklist:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-sampler:jar:RELEASE112:compile [DEBUG] org.antlr:antlr4-runtime:jar:4.8-1:compile [DEBUG] org.antlr:stringtemplate:jar:4.0.2:compile [DEBUG] org.antlr:antlr-runtime:jar:3.3:compile [DEBUG] org.antlr:antlr4:jar:4.8-1:compile [DEBUG] org.antlr:ST4:jar:4.3:compile [DEBUG] org.abego.treelayout:org.abego.treelayout.core:jar:1.0.3:compile [DEBUG] org.glassfish:javax.json:jar:1.0.4:compile [DEBUG] com.ibm.icu:icu4j:jar:61.1:compile [DEBUG] junit:junit:jar:4.13:test [DEBUG] org.hamcrest:hamcrest-core:jar:1.3:test [INFO] [INFO] --- maven-resources-plugin:2.6:resources (default-resources) @ editor-completionext --- [DEBUG] Dependency collection stats: {ConflictMarker.analyzeTime=115092, ConflictMarker.markTime=34482, ConflictMarker.nodeCount=77, ConflictIdSorter.graphTime=39904, ConflictIdSorter.topsortTime=20560, ConflictIdSorter.conflictIdCount=26, ConflictIdSorter.conflictIdCycleCount=0, ConflictResolver.totalTime=397797, ConflictResolver.conflictItemCount=74, DefaultDependencyCollector.collectTime=11071448, DefaultDependencyCollector.transformTime=631734} [DEBUG] org.apache.maven.plugins:maven-resources-plugin:jar:2.6 [DEBUG] org.apache.maven:maven-plugin-api:jar:2.0.6:compile [DEBUG] org.apache.maven:maven-project:jar:2.0.6:compile [DEBUG] org.apache.maven:maven-profile:jar:2.0.6:compile [DEBUG] org.apache.maven:maven-artifact-manager:jar:2.0.6:compile [DEBUG] org.apache.maven:maven-plugin-registry:jar:2.0.6:compile [DEBUG] org.apache.maven:maven-core:jar:2.0.6:compile [DEBUG] org.apache.maven:maven-plugin-parameter-documenter:jar:2.0.6:compile [DEBUG] org.apache.maven.reporting:maven-reporting-api:jar:2.0.6:compile [DEBUG] org.apache.maven.doxia:doxia-sink-api:jar:1.0-alpha-7:compile [DEBUG] org.apache.maven:maven-repository-metadata:jar:2.0.6:compile [DEBUG] org.apache.maven:maven-error-diagnostics:jar:2.0.6:compile [DEBUG] commons-cli:commons-cli:jar:1.0:compile [DEBUG] org.apache.maven:maven-plugin-descriptor:jar:2.0.6:compile [DEBUG] org.codehaus.plexus:plexus-interactivity-api:jar:1.0-alpha-4:compile [DEBUG] classworlds:classworlds:jar:1.1:compile [DEBUG] org.apache.maven:maven-artifact:jar:2.0.6:compile [DEBUG] org.apache.maven:maven-settings:jar:2.0.6:compile [DEBUG] org.apache.maven:maven-model:jar:2.0.6:compile [DEBUG] org.apache.maven:maven-monitor:jar:2.0.6:compile [DEBUG] org.codehaus.plexus:plexus-container-default:jar:1.0-alpha-9-stable-1:compile [DEBUG] junit:junit:jar:3.8.1:compile [DEBUG] org.codehaus.plexus:plexus-utils:jar:2.0.5:compile [DEBUG] org.apache.maven.shared:maven-filtering:jar:1.1:compile [DEBUG] org.sonatype.plexus:plexus-build-api:jar:0.0.4:compile [DEBUG] org.codehaus.plexus:plexus-interpolation:jar:1.13:compile [DEBUG] Created new class realm plugin>org.apache.maven.plugins:maven-resources-plugin:2.6 [DEBUG] Importing foreign packages into class realm plugin>org.apache.maven.plugins:maven-resources-plugin:2.6 [DEBUG] Imported: < maven.api [DEBUG] Populating class realm plugin>org.apache.maven.plugins:maven-resources-plugin:2.6 [DEBUG] Included: org.apache.maven.plugins:maven-resources-plugin:jar:2.6 [DEBUG] Included: org.apache.maven.reporting:maven-reporting-api:jar:2.0.6 [DEBUG] Included: org.apache.maven.doxia:doxia-sink-api:jar:1.0-alpha-7 [DEBUG] Included: commons-cli:commons-cli:jar:1.0 [DEBUG] Included: org.codehaus.plexus:plexus-interactivity-api:jar:1.0-alpha-4 [DEBUG] Included: junit:junit:jar:3.8.1 [DEBUG] Included: org.codehaus.plexus:plexus-utils:jar:2.0.5 [DEBUG] Included: org.apache.maven.shared:maven-filtering:jar:1.1 [DEBUG] Included: org.sonatype.plexus:plexus-build-api:jar:0.0.4 [DEBUG] Included: org.codehaus.plexus:plexus-interpolation:jar:1.13 [DEBUG] Configuring mojo org.apache.maven.plugins:maven-resources-plugin:2.6:resources from plugin realm ClassRealm[plugin>org.apache.maven.plugins:maven-resources-plugin:2.6, parent: jdk.internal.loader.ClassLoaders$AppClassLoader at 55054057] [DEBUG] Configuring mojo 'org.apache.maven.plugins:maven-resources-plugin:2.6:resources' with basic configurator --> [DEBUG] (f) buildFilters = [] [DEBUG] (f) encoding = UTF-8 [DEBUG] (f) escapeWindowsPaths = true [DEBUG] (s) includeEmptyDirs = false [DEBUG] (s) outputDirectory = /Users/janke/local/repos/antlrworks-jank/editor-completionext/target/classes [DEBUG] (s) overwrite = false [DEBUG] (f) project = MavenProject: net.apjanke.antlrworks-jank:editor-completionext:2.6.0-SNAPSHOT @ /Users/janke/local/repos/antlrworks-jank/editor-completionext/pom.xml [DEBUG] (s) resources = [Resource {targetPath: null, filtering: false, FileSet {directory: /Users/janke/local/repos/antlrworks-jank/editor-completionext/src/main/resources, PatternSet [includes: {}, excludes: {}]}}] [DEBUG] (f) session = org.apache.maven.execution.MavenSession at 58472096 [DEBUG] (f) supportMultiLineFiltering = false [DEBUG] (f) useBuildFilters = true [DEBUG] (s) useDefaultDelimiters = true [DEBUG] -- end configuration -- [DEBUG] properties used {env.TERM=xterm-256color, java.specification.version=13, sun.arch.data.model=64, env.CLICOLOR=1, java.vendor.url=https://openjdk.java.net/, env.COLORFGBG=12;8, env.GOPATH=/Users/janke/local/go-work, sun.boot.library.path=/usr/local/Cellar/openjdk/13.0.2+8_2/libexec/openjdk.jdk/Contents/Home/lib, sun.java.command=org.codehaus.plexus.classworlds.launcher.Launcher -X -e compile, jdk.debug=release, maven.version=3.6.3, java.specification.vendor=Oracle Corporation, java.version.date=2020-01-14, version=2.6.0-SNAPSHOT, java.home=/usr/local/Cellar/openjdk/13.0.2+8_2/libexec/openjdk.jdk/Contents/Home, env.GUIEDITOR=subl, java.vm.specification.vendor=Oracle Corporation, java.specification.name=Java Platform API Specification, sun.management.compiler=HotSpot 64-Bit Tiered Compilers, env.LC_TERMINAL_VERSION=3.3.9, java.runtime.version=13.0.2+8, env.LSCOLORS=gxxxdxdxdxexexdxdxgxgx, env.PATH=/usr/local/sbin:/usr/local/lib/ruby/gems/2.7.0/bin:/usr/local/lib/ruby/gems/2.6.0/bin:/usr/local/opt/ruby/bin:/Users/janke/bin:/usr/local/bin:/usr/local/sbin:/usr/local/lib/ruby/gems/2.7.0/bin:/usr/local/lib/ruby/gems/2.6.0/bin:/usr/local/opt/ruby/bin:/Users/janke/bin:/usr/local/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Applications/VMware Fusion.app/Contents/Public:/Library/TeX/texbin:/usr/local/MacGPG2/bin:/usr/local/share/dotnet:/opt/X11/bin:~/.dotnet/tools:/Library/Frameworks/Mono.framework/Versions/Current/Commands:/Users/janke/local/go-work/bin:/Users/janke/.rvm/bin:/Users/janke/local/go-work/bin:/Users/janke/.rvm/bin, env.LS_COLORS=di=36:so=33:pi=33:ex=33:bd=34:cd=34:su=33:sg=33:tw=36:ow=36:ln=00;04, file.encoding=UTF-8, env.HOMEBREW_EDITOR=subl, env.HISTCONTROL=ignoredups, env.SHLVL=2, java.io.tmpdir=/var/folders/_4/9mx5ryp52bb_z6drbcbrhwl40000gn/T/, java.version=13.0.2, java.vm.specification.name=Java Virtual Machine Specification, netbeans.version=RELEASE112, java.library.path=/Users/janke/Library/Java/Extensions:/Library/Java/Extensions:/Network/Library/Java/Extensions:/System/Library/Java/Extensions:/usr/lib/java:., java.vendor=N/A, env.JAVA_MAIN_CLASS_11911=org.codehaus.plexus.classworlds.launcher.Launcher, classworlds.conf=/usr/local/Cellar/maven/3.6.3_1/libexec/bin/m2.conf, sun.io.unicode.encoding=UnicodeBig, env.LANG=en_US.UTF-8, env.HOMEBREW_SANDBOX=1, java.vm.specification.version=13, os.name=Mac OS X, env.DISPLAY=/private/tmp/com.apple.launchd.O2942FNRqP/org.macosforge.xquartz:0, release.username=apjanke, http.nonProxyHosts=local|*.local|169.254/16|*.169.254/16, maven.compiler.source=1.8, user.home=/Users/janke, env.XML_CATALOG_FILES=/usr/local/etc/xml/catalog, env.EDITOR=vi, brandingToken=antlrworks2jank, env.COLORTERM=truecolor, env.Apple_PubSub_Socket_Render=/private/tmp/com.apple.launchd.YiSqoN3EU9/Render, env.ITERM_SESSION_ID=w0t0p0:71DF3FA8-5482-4070-8BD4-354B2D5AA3BB, env.ITERM_PROFILE=Solarized - Dark - apj, path.separator=:, os.version=10.14.6, java.vm.name=OpenJDK 64-Bit Server VM, env.SHELL=/bin/zsh, gpg.executable=gpg2, env.HISTSIZE=32768, os.arch=x86_64, env.HISTFILESIZE=32768, maven.multiModuleProjectDirectory=/Users/janke/local/repos/antlrworks-jank, env.MAVEN_PROJECTBASEDIR=/Users/janke/local/repos/antlrworks-jank, java.vm.info=mixed mode, sharing, env.USER=janke, java.class.version=57.0, env.HOMEBREW_NO_AUTO_UPDATE=1, sun.jnu.encoding=UTF-8, env.HISTIGNORE=ls:ls *:cd:cd -:pwd:exit:date:* --help, env.VISUAL=subl -w, maven.build.version=Apache Maven 3.6.3 (cecedd343002696d0abb50b32b541b8a6ba2883f), maven.home=/usr/local/Cellar/maven/3.6.3_1/libexec, env.JAVA_HOME=/usr/local/opt/openjdk, env.LC_TERMINAL=iTerm2, file.separator=/, env.LESS=-R, java.vm.compressedOopsMode=Non-zero disjoint base, line.separator= , env.TERM_PROGRAM_VERSION=3.3.9, user.name=janke, env.XPC_FLAGS=0x0, env.LOGNAME=janke, env.__CF_USER_TEXT_ENCODING=0x1F5:0x0:0x0, env.TERM_SESSION_ID=w0t0p0:71DF3FA8-5482-4070-8BD4-354B2D5AA3BB, env.SSH_AUTH_SOCK=/private/tmp/com.apple.launchd.9RGvwmJ5GD/Listeners, env.TERMINFO_DIRS=/Users/janke/.terminfo:/usr/local/share/terminfo:, maven.compiler.target=1.8, env.TMPDIR=/var/folders/_4/9mx5ryp52bb_z6drbcbrhwl40000gn/T/, library.jansi.path=/usr/local/Cellar/maven/3.6.3_1/libexec/lib/jansi-native, env.TERM_PROGRAM=iTerm.app, socksNonProxyHosts=local|*.local|169.254/16|*.169.254/16, env.OLDPWD=/Users/janke/local/repos/antlrworks-jank, env.PWD=/Users/janke/local/repos/antlrworks-jank, env.PAGER=less, java.class.path=/usr/local/Cellar/maven/3.6.3_1/libexec/boot/plexus-classworlds-2.6.0.jar, env.HOME=/Users/janke, java.vm.vendor=Oracle Corporation, gpg.keyname=24AF1EA5, maven.conf=/usr/local/Cellar/maven/3.6.3_1/libexec/conf, env.HOMEBREW_DEVELOPER=1, sun.java.launcher=SUN_STANDARD, user.country=US, sun.cpu.endian=little, user.language=en, env.XPC_SERVICE_NAME=0, ftp.nonProxyHosts=local|*.local|169.254/16|*.169.254/16, java.runtime.name=OpenJDK Runtime Environment, project.build.sourceEncoding=UTF-8, env.MAVEN_CMD_LINE_ARGS= -X -e compile, java.vendor.url.bug=https://bugreport.java.com/bugreport/, user.dir=/Users/janke/local/repos/antlrworks-jank, antlr.version=4.8-1, java.vm.version=13.0.2+8} [INFO] Using 'UTF-8' encoding to copy filtered resources. [DEBUG] resource with targetPath null directory /Users/janke/local/repos/antlrworks-jank/editor-completionext/src/main/resources excludes [] includes [] [INFO] skip non existing resourceDirectory /Users/janke/local/repos/antlrworks-jank/editor-completionext/src/main/resources [DEBUG] no use filter components [INFO] [INFO] --- maven-compiler-plugin:3.8.1:compile (default-compile) @ editor-completionext --- [DEBUG] Dependency collection stats: {ConflictMarker.analyzeTime=94888, ConflictMarker.markTime=47953, ConflictMarker.nodeCount=118, ConflictIdSorter.graphTime=32560, ConflictIdSorter.topsortTime=34340, ConflictIdSorter.conflictIdCount=45, ConflictIdSorter.conflictIdCycleCount=0, ConflictResolver.totalTime=497197, ConflictResolver.conflictItemCount=72, DefaultDependencyCollector.collectTime=82520372, DefaultDependencyCollector.transformTime=728737} [DEBUG] org.apache.maven.plugins:maven-compiler-plugin:jar:3.8.1 [DEBUG] org.apache.maven:maven-plugin-api:jar:3.0:compile [DEBUG] org.apache.maven:maven-model:jar:3.0:compile [DEBUG] org.sonatype.sisu:sisu-inject-plexus:jar:1.4.2:compile [DEBUG] org.sonatype.sisu:sisu-inject-bean:jar:1.4.2:compile [DEBUG] org.sonatype.sisu:sisu-guice:jar:noaop:2.1.7:compile [DEBUG] org.apache.maven:maven-artifact:jar:3.0:compile [DEBUG] org.codehaus.plexus:plexus-utils:jar:2.0.4:compile [DEBUG] org.apache.maven:maven-core:jar:3.0:compile [DEBUG] org.apache.maven:maven-settings:jar:3.0:compile [DEBUG] org.apache.maven:maven-settings-builder:jar:3.0:compile [DEBUG] org.apache.maven:maven-repository-metadata:jar:3.0:compile [DEBUG] org.apache.maven:maven-model-builder:jar:3.0:compile [DEBUG] org.apache.maven:maven-aether-provider:jar:3.0:runtime [DEBUG] org.sonatype.aether:aether-impl:jar:1.7:compile [DEBUG] org.sonatype.aether:aether-spi:jar:1.7:compile [DEBUG] org.sonatype.aether:aether-api:jar:1.7:compile [DEBUG] org.sonatype.aether:aether-util:jar:1.7:compile [DEBUG] org.codehaus.plexus:plexus-interpolation:jar:1.14:compile [DEBUG] org.codehaus.plexus:plexus-classworlds:jar:2.2.3:compile [DEBUG] org.codehaus.plexus:plexus-component-annotations:jar:1.7.1:compile (version managed from default) [DEBUG] org.sonatype.plexus:plexus-sec-dispatcher:jar:1.3:compile [DEBUG] org.sonatype.plexus:plexus-cipher:jar:1.4:compile [DEBUG] org.apache.maven.shared:maven-shared-utils:jar:3.2.1:compile [DEBUG] commons-io:commons-io:jar:2.5:compile [DEBUG] org.apache.maven.shared:maven-shared-incremental:jar:1.1:compile [DEBUG] org.codehaus.plexus:plexus-java:jar:0.9.10:compile [DEBUG] org.ow2.asm:asm:jar:6.2:compile [DEBUG] com.thoughtworks.qdox:qdox:jar:2.0-M9:compile (version managed from default) [DEBUG] org.codehaus.plexus:plexus-compiler-api:jar:2.8.4:compile [DEBUG] org.codehaus.plexus:plexus-compiler-manager:jar:2.8.4:compile [DEBUG] org.codehaus.plexus:plexus-compiler-javac:jar:2.8.4:runtime [DEBUG] Created new class realm plugin>org.apache.maven.plugins:maven-compiler-plugin:3.8.1 [DEBUG] Importing foreign packages into class realm plugin>org.apache.maven.plugins:maven-compiler-plugin:3.8.1 [DEBUG] Imported: < maven.api [DEBUG] Populating class realm plugin>org.apache.maven.plugins:maven-compiler-plugin:3.8.1 [DEBUG] Included: org.apache.maven.plugins:maven-compiler-plugin:jar:3.8.1 [DEBUG] Included: org.sonatype.sisu:sisu-inject-bean:jar:1.4.2 [DEBUG] Included: org.sonatype.sisu:sisu-guice:jar:noaop:2.1.7 [DEBUG] Included: org.codehaus.plexus:plexus-utils:jar:2.0.4 [DEBUG] Included: org.sonatype.aether:aether-util:jar:1.7 [DEBUG] Included: org.codehaus.plexus:plexus-interpolation:jar:1.14 [DEBUG] Included: org.codehaus.plexus:plexus-component-annotations:jar:1.7.1 [DEBUG] Included: org.sonatype.plexus:plexus-sec-dispatcher:jar:1.3 [DEBUG] Included: org.sonatype.plexus:plexus-cipher:jar:1.4 [DEBUG] Included: org.apache.maven.shared:maven-shared-utils:jar:3.2.1 [DEBUG] Included: commons-io:commons-io:jar:2.5 [DEBUG] Included: org.apache.maven.shared:maven-shared-incremental:jar:1.1 [DEBUG] Included: org.codehaus.plexus:plexus-java:jar:0.9.10 [DEBUG] Included: org.ow2.asm:asm:jar:6.2 [DEBUG] Included: com.thoughtworks.qdox:qdox:jar:2.0-M9 [DEBUG] Included: org.codehaus.plexus:plexus-compiler-api:jar:2.8.4 [DEBUG] Included: org.codehaus.plexus:plexus-compiler-manager:jar:2.8.4 [DEBUG] Included: org.codehaus.plexus:plexus-compiler-javac:jar:2.8.4 [DEBUG] Configuring mojo org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile from plugin realm ClassRealm[plugin>org.apache.maven.plugins:maven-compiler-plugin:3.8.1, parent: jdk.internal.loader.ClassLoaders$AppClassLoader at 55054057] [DEBUG] Configuring mojo 'org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile' with basic configurator --> [DEBUG] (f) basedir = /Users/janke/local/repos/antlrworks-jank/editor-completionext [DEBUG] (f) buildDirectory = /Users/janke/local/repos/antlrworks-jank/editor-completionext/target [DEBUG] (f) compilePath = [/Users/janke/local/repos/antlrworks-jank/editor-completionext/target/classes, /Users/janke/.m2/repository/javax/annotation/javax.annotation-api/1.3.2/javax.annotation-api-1.3.2.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-api-annotations-common/RELEASE112/org-netbeans-api-annotations-common-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-spi-palette/RELEASE112/org-netbeans-spi-palette-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-awt/RELEASE112/org-openide-awt-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-dialogs/RELEASE112/org-openide-dialogs-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-explorer/RELEASE112/org-openide-explorer-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-swing-tabcontrol/RELEASE112/org-netbeans-swing-tabcontrol-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-filesystems/RELEASE112/org-openide-filesystems-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-loaders/RELEASE112/org-openide-loaders-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-api-scripting/RELEASE112/org-netbeans-api-scripting-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-api-templates/RELEASE112/org-netbeans-api-templates-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-modules/RELEASE112/org-openide-modules-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-nodes/RELEASE112/org-openide-nodes-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-text/RELEASE112/org-openide-text-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-util/RELEASE112/org-openide-util-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-util-lookup/RELEASE112/org-openide-util-lookup-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-windows/RELEASE112/org-openide-windows-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-util/RELEASE112/org-netbeans-modules-editor-util-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor/RELEASE112/org-netbeans-modules-editor-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-api-progress/RELEASE112/org-netbeans-api-progress-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-api-progress-nb/RELEASE112/org-netbeans-api-progress-nb-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-document/RELEASE112/org-netbeans-modules-editor-document-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-guards/RELEASE112/org-netbeans-modules-editor-guards-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-indent/RELEASE112/org-netbeans-modules-editor-indent-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-lib2/RELEASE112/org-netbeans-modules-editor-lib2-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-lexer/RELEASE112/org-netbeans-modules-lexer-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-actions/RELEASE112/org-openide-actions-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-filesystems-nb/RELEASE112/org-openide-filesystems-nb-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-fold/RELEASE112/org-netbeans-modules-editor-fold-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-settings-lib/RELEASE112/org-netbeans-modules-editor-settings-lib-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-util-ui/RELEASE112/org-openide-util-ui-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-lib/RELEASE112/org-netbeans-modules-editor-lib-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-mimelookup/RELEASE112/org-netbeans-modules-editor-mimelookup-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-settings/RELEASE112/org-netbeans-modules-editor-settings-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/modules/org-netbeans-modules-editor-settings-storage/RELEASE112/org-netbeans-modules-editor-settings-storage-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/modules/org-netbeans-modules-options-keymap/RELEASE112/org-netbeans-modules-options-keymap-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-options-api/RELEASE112/org-netbeans-modules-options-api-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-spi-quicksearch/RELEASE112/org-netbeans-spi-quicksearch-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-swing-outline/RELEASE112/org-netbeans-swing-outline-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-spi-editor-hints-projects/RELEASE112/org-netbeans-spi-editor-hints-projects-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-tools-storage/RELEASE112/org-netbeans-modules-editor-tools-storage-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-projectapi/RELEASE112/org-netbeans-modules-projectapi-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-projectuiapi/RELEASE112/org-netbeans-modules-projectuiapi-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-spi-editor-hints/RELEASE112/org-netbeans-spi-editor-hints-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-spi-navigator/RELEASE112/org-netbeans-spi-navigator-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-parsing-indexing/RELEASE112/org-netbeans-modules-parsing-indexing-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-api-java-classpath/RELEASE112/org-netbeans-api-java-classpath-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-libs-lucene/RELEASE112/org-netbeans-libs-lucene-RELEASE112.jar, /Users/janke/.m2/repository/org/apache/lucene/lucene-core/3.5.0/lucene-core-3.5.0.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-parsing-api/RELEASE112/org-netbeans-modules-parsing-api-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-projectuiapi-base/RELEASE112/org-netbeans-modules-projectuiapi-base-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-queries/RELEASE112/org-netbeans-modules-queries-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-spi-tasklist/RELEASE112/org-netbeans-spi-tasklist-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-sampler/RELEASE112/org-netbeans-modules-sampler-RELEASE112.jar, /Users/janke/.m2/repository/org/antlr/antlr4-runtime/4.8-1/antlr4-runtime-4.8-1.jar, /Users/janke/.m2/repository/org/antlr/stringtemplate/4.0.2/stringtemplate-4.0.2.jar, /Users/janke/.m2/repository/org/antlr/antlr-runtime/3.3/antlr-runtime-3.3.jar, /Users/janke/.m2/repository/org/antlr/antlr4/4.8-1/antlr4-4.8-1.jar, /Users/janke/.m2/repository/org/antlr/ST4/4.3/ST4-4.3.jar, /Users/janke/.m2/repository/org/abego/treelayout/org.abego.treelayout.core/1.0.3/org.abego.treelayout.core-1.0.3.jar, /Users/janke/.m2/repository/org/glassfish/javax.json/1.0.4/javax.json-1.0.4.jar, /Users/janke/.m2/repository/com/ibm/icu/icu4j/61.1/icu4j-61.1.jar] [DEBUG] (f) compileSourceRoots = [/Users/janke/local/repos/antlrworks-jank/editor-completionext/src/main/java] [DEBUG] (f) compilerId = javac [DEBUG] (f) debug = true [DEBUG] (f) encoding = UTF-8 [DEBUG] (f) failOnError = true [DEBUG] (f) failOnWarning = false [DEBUG] (f) forceJavacCompilerUse = false [DEBUG] (f) fork = false [DEBUG] (f) generatedSourcesDirectory = /Users/janke/local/repos/antlrworks-jank/editor-completionext/target/generated-sources/annotations [DEBUG] (f) mojoExecution = org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile {execution: default-compile} [DEBUG] (f) optimize = false [DEBUG] (f) outputDirectory = /Users/janke/local/repos/antlrworks-jank/editor-completionext/target/classes [DEBUG] (f) parameters = false [DEBUG] (f) project = MavenProject: net.apjanke.antlrworks-jank:editor-completionext:2.6.0-SNAPSHOT @ /Users/janke/local/repos/antlrworks-jank/editor-completionext/pom.xml [DEBUG] (f) projectArtifact = net.apjanke.antlrworks-jank:editor-completionext:jar:2.6.0-SNAPSHOT [DEBUG] (f) session = org.apache.maven.execution.MavenSession at 58472096 [DEBUG] (f) showDeprecation = false [DEBUG] (f) showWarnings = false [DEBUG] (f) skipMultiThreadWarning = false [DEBUG] (f) source = 1.8 [DEBUG] (f) staleMillis = 0 [DEBUG] (s) target = 1.8 [DEBUG] (f) useIncrementalCompilation = true [DEBUG] (f) verbose = false [DEBUG] -- end configuration -- [DEBUG] Using compiler 'javac'. [DEBUG] Adding /Users/janke/local/repos/antlrworks-jank/editor-completionext/target/generated-sources/annotations to compile source roots: /Users/janke/local/repos/antlrworks-jank/editor-completionext/src/main/java [DEBUG] New compile source roots: /Users/janke/local/repos/antlrworks-jank/editor-completionext/src/main/java /Users/janke/local/repos/antlrworks-jank/editor-completionext/target/generated-sources/annotations [DEBUG] CompilerReuseStrategy: reuseCreated [DEBUG] useIncrementalCompilation enabled [INFO] Nothing to compile - all classes are up to date [INFO] [INFO] --------< net.apjanke.antlrworks-jank:editor-containingfolder >--------- [INFO] Building editor-containingfolder 2.6.0-SNAPSHOT [3/9] [INFO] --------------------------------[ jar ]--------------------------------- [DEBUG] Lifecycle default -> [validate, initialize, generate-sources, process-sources, generate-resources, process-resources, compile, process-classes, generate-test-sources, process-test-sources, generate-test-resources, process-test-resources, test-compile, process-test-classes, test, prepare-package, package, pre-integration-test, integration-test, post-integration-test, verify, install, deploy] [DEBUG] Lifecycle clean -> [pre-clean, clean, post-clean] [DEBUG] Lifecycle site -> [pre-site, site, post-site, site-deploy] [DEBUG] Lifecycle default -> [validate, initialize, generate-sources, process-sources, generate-resources, process-resources, compile, process-classes, generate-test-sources, process-test-sources, generate-test-resources, process-test-resources, test-compile, process-test-classes, test, prepare-package, package, pre-integration-test, integration-test, post-integration-test, verify, install, deploy] [DEBUG] Lifecycle clean -> [pre-clean, clean, post-clean] [DEBUG] Lifecycle site -> [pre-site, site, post-site, site-deploy] [DEBUG] Lifecycle default -> [validate, initialize, generate-sources, process-sources, generate-resources, process-resources, compile, process-classes, generate-test-sources, process-test-sources, generate-test-resources, process-test-resources, test-compile, process-test-classes, test, prepare-package, package, pre-integration-test, integration-test, post-integration-test, verify, install, deploy] [DEBUG] Lifecycle clean -> [pre-clean, clean, post-clean] [DEBUG] Lifecycle site -> [pre-site, site, post-site, site-deploy] [DEBUG] === PROJECT BUILD PLAN ================================================ [DEBUG] Project: net.apjanke.antlrworks-jank:editor-containingfolder:2.6.0-SNAPSHOT [DEBUG] Dependencies (collect): [] [DEBUG] Dependencies (resolve): [compile] [DEBUG] Repositories (dependencies): [netbeans (http://bits.netbeans.org/nexus/content/groups/netbeans/, default, releases+snapshots), atricore (http://repository.atricore.org/m2-release-repository/, default, releases+snapshots), central (https://repo.maven.apache.org/maven2, default, releases)] [DEBUG] Repositories (plugins) : [central (https://repo.maven.apache.org/maven2, default, releases)] [DEBUG] ----------------------------------------------------------------------- [DEBUG] Goal: org.apache.maven.plugins:maven-resources-plugin:2.6:resources (default-resources) [DEBUG] Style: Regular [DEBUG] Configuration: ${encoding} ${maven.resources.escapeString} ${maven.resources.escapeWindowsPaths} ${maven.resources.includeEmptyDirs} ${maven.resources.overwrite} ${maven.resources.supportMultiLineFiltering} [DEBUG] ----------------------------------------------------------------------- [DEBUG] Goal: org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile (default-compile) [DEBUG] Style: Regular [DEBUG] Configuration: ${maven.compiler.compilerId} ${maven.compiler.compilerReuseStrategy} ${maven.compiler.compilerVersion} ${maven.compiler.debug} ${maven.compiler.debuglevel} ${encoding} ${maven.compiler.executable} ${maven.compiler.failOnError} ${maven.compiler.failOnWarning} ${maven.compiler.forceJavacCompilerUse} ${maven.compiler.fork} ${maven.compiler.maxmem} ${maven.compiler.meminitial} ${maven.compiler.optimize} ${maven.compiler.parameters} ${maven.compiler.release} ${maven.compiler.showDeprecation} ${maven.compiler.showWarnings} ${maven.main.skip} ${maven.compiler.skipMultiThreadWarning} 8 ${lastModGranularityMs} 8 ${maven.compiler.useIncrementalCompilation} ${maven.compiler.verbose} [DEBUG] ======================================================================= [DEBUG] Dependency collection stats: {ConflictMarker.analyzeTime=10983, ConflictMarker.markTime=17644, ConflictMarker.nodeCount=3, ConflictIdSorter.graphTime=6430, ConflictIdSorter.topsortTime=9714, ConflictIdSorter.conflictIdCount=2, ConflictIdSorter.conflictIdCycleCount=0, ConflictResolver.totalTime=77661, ConflictResolver.conflictItemCount=2, DefaultDependencyCollector.collectTime=1978244, DefaultDependencyCollector.transformTime=139159} [DEBUG] net.apjanke.antlrworks-jank:editor-containingfolder:jar:2.6.0-SNAPSHOT [DEBUG] junit:junit:jar:4.13:test [DEBUG] org.hamcrest:hamcrest-core:jar:1.3:test [INFO] [INFO] --- maven-resources-plugin:2.6:resources (default-resources) @ editor-containingfolder --- [DEBUG] Configuring mojo org.apache.maven.plugins:maven-resources-plugin:2.6:resources from plugin realm ClassRealm[plugin>org.apache.maven.plugins:maven-resources-plugin:2.6, parent: jdk.internal.loader.ClassLoaders$AppClassLoader at 55054057] [DEBUG] Configuring mojo 'org.apache.maven.plugins:maven-resources-plugin:2.6:resources' with basic configurator --> [DEBUG] (f) buildFilters = [] [DEBUG] (f) encoding = UTF-8 [DEBUG] (f) escapeWindowsPaths = true [DEBUG] (s) includeEmptyDirs = false [DEBUG] (s) outputDirectory = /Users/janke/local/repos/antlrworks-jank/editor-containingfolder/target/classes [DEBUG] (s) overwrite = false [DEBUG] (f) project = MavenProject: net.apjanke.antlrworks-jank:editor-containingfolder:2.6.0-SNAPSHOT @ /Users/janke/local/repos/antlrworks-jank/editor-containingfolder/pom.xml [DEBUG] (s) resources = [Resource {targetPath: null, filtering: false, FileSet {directory: /Users/janke/local/repos/antlrworks-jank/editor-containingfolder/src/main/resources, PatternSet [includes: {}, excludes: {}]}}] [DEBUG] (f) session = org.apache.maven.execution.MavenSession at 58472096 [DEBUG] (f) supportMultiLineFiltering = false [DEBUG] (f) useBuildFilters = true [DEBUG] (s) useDefaultDelimiters = true [DEBUG] -- end configuration -- [DEBUG] properties used {env.TERM=xterm-256color, java.specification.version=13, sun.arch.data.model=64, env.CLICOLOR=1, java.vendor.url=https://openjdk.java.net/, env.COLORFGBG=12;8, env.GOPATH=/Users/janke/local/go-work, sun.boot.library.path=/usr/local/Cellar/openjdk/13.0.2+8_2/libexec/openjdk.jdk/Contents/Home/lib, sun.java.command=org.codehaus.plexus.classworlds.launcher.Launcher -X -e compile, jdk.debug=release, maven.version=3.6.3, java.specification.vendor=Oracle Corporation, java.version.date=2020-01-14, version=2.6.0-SNAPSHOT, java.home=/usr/local/Cellar/openjdk/13.0.2+8_2/libexec/openjdk.jdk/Contents/Home, env.GUIEDITOR=subl, java.vm.specification.vendor=Oracle Corporation, java.specification.name=Java Platform API Specification, sun.management.compiler=HotSpot 64-Bit Tiered Compilers, env.LC_TERMINAL_VERSION=3.3.9, java.runtime.version=13.0.2+8, env.LSCOLORS=gxxxdxdxdxexexdxdxgxgx, env.PATH=/usr/local/sbin:/usr/local/lib/ruby/gems/2.7.0/bin:/usr/local/lib/ruby/gems/2.6.0/bin:/usr/local/opt/ruby/bin:/Users/janke/bin:/usr/local/bin:/usr/local/sbin:/usr/local/lib/ruby/gems/2.7.0/bin:/usr/local/lib/ruby/gems/2.6.0/bin:/usr/local/opt/ruby/bin:/Users/janke/bin:/usr/local/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Applications/VMware Fusion.app/Contents/Public:/Library/TeX/texbin:/usr/local/MacGPG2/bin:/usr/local/share/dotnet:/opt/X11/bin:~/.dotnet/tools:/Library/Frameworks/Mono.framework/Versions/Current/Commands:/Users/janke/local/go-work/bin:/Users/janke/.rvm/bin:/Users/janke/local/go-work/bin:/Users/janke/.rvm/bin, env.LS_COLORS=di=36:so=33:pi=33:ex=33:bd=34:cd=34:su=33:sg=33:tw=36:ow=36:ln=00;04, file.encoding=UTF-8, env.HOMEBREW_EDITOR=subl, env.HISTCONTROL=ignoredups, env.SHLVL=2, java.io.tmpdir=/var/folders/_4/9mx5ryp52bb_z6drbcbrhwl40000gn/T/, java.version=13.0.2, java.vm.specification.name=Java Virtual Machine Specification, netbeans.version=RELEASE112, java.library.path=/Users/janke/Library/Java/Extensions:/Library/Java/Extensions:/Network/Library/Java/Extensions:/System/Library/Java/Extensions:/usr/lib/java:., java.vendor=N/A, env.JAVA_MAIN_CLASS_11911=org.codehaus.plexus.classworlds.launcher.Launcher, classworlds.conf=/usr/local/Cellar/maven/3.6.3_1/libexec/bin/m2.conf, sun.io.unicode.encoding=UnicodeBig, env.LANG=en_US.UTF-8, env.HOMEBREW_SANDBOX=1, java.vm.specification.version=13, os.name=Mac OS X, env.DISPLAY=/private/tmp/com.apple.launchd.O2942FNRqP/org.macosforge.xquartz:0, release.username=apjanke, http.nonProxyHosts=local|*.local|169.254/16|*.169.254/16, maven.compiler.source=1.8, user.home=/Users/janke, env.XML_CATALOG_FILES=/usr/local/etc/xml/catalog, env.EDITOR=vi, brandingToken=antlrworks2jank, env.COLORTERM=truecolor, env.Apple_PubSub_Socket_Render=/private/tmp/com.apple.launchd.YiSqoN3EU9/Render, env.ITERM_SESSION_ID=w0t0p0:71DF3FA8-5482-4070-8BD4-354B2D5AA3BB, env.ITERM_PROFILE=Solarized - Dark - apj, path.separator=:, os.version=10.14.6, java.vm.name=OpenJDK 64-Bit Server VM, env.SHELL=/bin/zsh, gpg.executable=gpg2, env.HISTSIZE=32768, os.arch=x86_64, env.HISTFILESIZE=32768, maven.multiModuleProjectDirectory=/Users/janke/local/repos/antlrworks-jank, env.MAVEN_PROJECTBASEDIR=/Users/janke/local/repos/antlrworks-jank, java.vm.info=mixed mode, sharing, env.USER=janke, java.class.version=57.0, env.HOMEBREW_NO_AUTO_UPDATE=1, sun.jnu.encoding=UTF-8, env.HISTIGNORE=ls:ls *:cd:cd -:pwd:exit:date:* --help, env.VISUAL=subl -w, maven.build.version=Apache Maven 3.6.3 (cecedd343002696d0abb50b32b541b8a6ba2883f), maven.home=/usr/local/Cellar/maven/3.6.3_1/libexec, env.JAVA_HOME=/usr/local/opt/openjdk, env.LC_TERMINAL=iTerm2, file.separator=/, env.LESS=-R, java.vm.compressedOopsMode=Non-zero disjoint base, line.separator= , env.TERM_PROGRAM_VERSION=3.3.9, user.name=janke, env.XPC_FLAGS=0x0, env.LOGNAME=janke, env.__CF_USER_TEXT_ENCODING=0x1F5:0x0:0x0, env.TERM_SESSION_ID=w0t0p0:71DF3FA8-5482-4070-8BD4-354B2D5AA3BB, env.SSH_AUTH_SOCK=/private/tmp/com.apple.launchd.9RGvwmJ5GD/Listeners, env.TERMINFO_DIRS=/Users/janke/.terminfo:/usr/local/share/terminfo:, maven.compiler.target=1.8, env.TMPDIR=/var/folders/_4/9mx5ryp52bb_z6drbcbrhwl40000gn/T/, library.jansi.path=/usr/local/Cellar/maven/3.6.3_1/libexec/lib/jansi-native, env.TERM_PROGRAM=iTerm.app, socksNonProxyHosts=local|*.local|169.254/16|*.169.254/16, env.OLDPWD=/Users/janke/local/repos/antlrworks-jank, env.PWD=/Users/janke/local/repos/antlrworks-jank, env.PAGER=less, java.class.path=/usr/local/Cellar/maven/3.6.3_1/libexec/boot/plexus-classworlds-2.6.0.jar, env.HOME=/Users/janke, java.vm.vendor=Oracle Corporation, gpg.keyname=24AF1EA5, maven.conf=/usr/local/Cellar/maven/3.6.3_1/libexec/conf, env.HOMEBREW_DEVELOPER=1, sun.java.launcher=SUN_STANDARD, user.country=US, sun.cpu.endian=little, user.language=en, env.XPC_SERVICE_NAME=0, ftp.nonProxyHosts=local|*.local|169.254/16|*.169.254/16, java.runtime.name=OpenJDK Runtime Environment, project.build.sourceEncoding=UTF-8, env.MAVEN_CMD_LINE_ARGS= -X -e compile, java.vendor.url.bug=https://bugreport.java.com/bugreport/, user.dir=/Users/janke/local/repos/antlrworks-jank, antlr.version=4.8-1, java.vm.version=13.0.2+8} [INFO] Using 'UTF-8' encoding to copy filtered resources. [DEBUG] resource with targetPath null directory /Users/janke/local/repos/antlrworks-jank/editor-containingfolder/src/main/resources excludes [] includes [] [INFO] skip non existing resourceDirectory /Users/janke/local/repos/antlrworks-jank/editor-containingfolder/src/main/resources [DEBUG] no use filter components [INFO] [INFO] --- maven-compiler-plugin:3.8.1:compile (default-compile) @ editor-containingfolder --- [DEBUG] Configuring mojo org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile from plugin realm ClassRealm[plugin>org.apache.maven.plugins:maven-compiler-plugin:3.8.1, parent: jdk.internal.loader.ClassLoaders$AppClassLoader at 55054057] [DEBUG] Configuring mojo 'org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile' with basic configurator --> [DEBUG] (f) basedir = /Users/janke/local/repos/antlrworks-jank/editor-containingfolder [DEBUG] (f) buildDirectory = /Users/janke/local/repos/antlrworks-jank/editor-containingfolder/target [DEBUG] (f) compilePath = [/Users/janke/local/repos/antlrworks-jank/editor-containingfolder/target/classes] [DEBUG] (f) compileSourceRoots = [/Users/janke/local/repos/antlrworks-jank/editor-containingfolder/src/main/java] [DEBUG] (f) compilerId = javac [DEBUG] (f) debug = true [DEBUG] (f) encoding = UTF-8 [DEBUG] (f) failOnError = true [DEBUG] (f) failOnWarning = false [DEBUG] (f) forceJavacCompilerUse = false [DEBUG] (f) fork = false [DEBUG] (f) generatedSourcesDirectory = /Users/janke/local/repos/antlrworks-jank/editor-containingfolder/target/generated-sources/annotations [DEBUG] (f) mojoExecution = org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile {execution: default-compile} [DEBUG] (f) optimize = false [DEBUG] (f) outputDirectory = /Users/janke/local/repos/antlrworks-jank/editor-containingfolder/target/classes [DEBUG] (f) parameters = false [DEBUG] (f) project = MavenProject: net.apjanke.antlrworks-jank:editor-containingfolder:2.6.0-SNAPSHOT @ /Users/janke/local/repos/antlrworks-jank/editor-containingfolder/pom.xml [DEBUG] (f) projectArtifact = net.apjanke.antlrworks-jank:editor-containingfolder:jar:2.6.0-SNAPSHOT [DEBUG] (f) session = org.apache.maven.execution.MavenSession at 58472096 [DEBUG] (f) showDeprecation = false [DEBUG] (f) showWarnings = false [DEBUG] (f) skipMultiThreadWarning = false [DEBUG] (f) source = 8 [DEBUG] (f) staleMillis = 0 [DEBUG] (s) target = 8 [DEBUG] (f) useIncrementalCompilation = true [DEBUG] (f) verbose = false [DEBUG] -- end configuration -- [DEBUG] Using compiler 'javac'. [INFO] No sources to compile [INFO] [INFO] ----------< net.apjanke.antlrworks-jank:antlr-works-netbeans >---------- [INFO] Building antlr-works-netbeans 2.6.0-SNAPSHOT [4/9] [INFO] --------------------------------[ nbm ]--------------------------------- [DEBUG] Could not find metadata org.apache.maven.plugins:maven-resources-plugin/maven-metadata.xml in local (/Users/janke/.m2/repository) [DEBUG] Skipped remote request for org.apache.maven.plugins:maven-resources-plugin/maven-metadata.xml, locally cached metadata up-to-date. [DEBUG] Resolved plugin version for org.apache.maven.plugins:maven-resources-plugin to 3.1.0 from repository central (https://repo.maven.apache.org/maven2, default, releases) [DEBUG] Could not find metadata org.apache.maven.plugins:maven-surefire-plugin/maven-metadata.xml in local (/Users/janke/.m2/repository) [DEBUG] Skipped remote request for org.apache.maven.plugins:maven-surefire-plugin/maven-metadata.xml, locally cached metadata up-to-date. [DEBUG] Resolved plugin version for org.apache.maven.plugins:maven-surefire-plugin to 3.0.0-M4 from repository central (https://repo.maven.apache.org/maven2, default, releases) [DEBUG] Could not find metadata org.apache.maven.plugins:maven-install-plugin/maven-metadata.xml in local (/Users/janke/.m2/repository) [DEBUG] Skipped remote request for org.apache.maven.plugins:maven-install-plugin/maven-metadata.xml, locally cached metadata up-to-date. [DEBUG] Resolved plugin version for org.apache.maven.plugins:maven-install-plugin to 3.0.0-M1 from repository central (https://repo.maven.apache.org/maven2, default, releases) [DEBUG] Could not find metadata org.apache.maven.plugins:maven-deploy-plugin/maven-metadata.xml in local (/Users/janke/.m2/repository) [DEBUG] Skipped remote request for org.apache.maven.plugins:maven-deploy-plugin/maven-metadata.xml, locally cached metadata up-to-date. [DEBUG] Resolved plugin version for org.apache.maven.plugins:maven-deploy-plugin to 3.0.0-M1 from repository central (https://repo.maven.apache.org/maven2, default, releases) [DEBUG] Lifecycle default -> [validate, initialize, generate-sources, process-sources, generate-resources, process-resources, compile, process-classes, generate-test-sources, process-test-sources, generate-test-resources, process-test-resources, test-compile, process-test-classes, test, prepare-package, package, pre-integration-test, integration-test, post-integration-test, verify, install, deploy] [DEBUG] Lifecycle clean -> [pre-clean, clean, post-clean] [DEBUG] Lifecycle site -> [pre-site, site, post-site, site-deploy] [DEBUG] Lifecycle default -> [validate, initialize, generate-sources, process-sources, generate-resources, process-resources, compile, process-classes, generate-test-sources, process-test-sources, generate-test-resources, process-test-resources, test-compile, process-test-classes, test, prepare-package, package, pre-integration-test, integration-test, post-integration-test, verify, install, deploy] [DEBUG] Lifecycle clean -> [pre-clean, clean, post-clean] [DEBUG] Lifecycle site -> [pre-site, site, post-site, site-deploy] [DEBUG] Lifecycle default -> [validate, initialize, generate-sources, process-sources, generate-resources, process-resources, compile, process-classes, generate-test-sources, process-test-sources, generate-test-resources, process-test-resources, test-compile, process-test-classes, test, prepare-package, package, pre-integration-test, integration-test, post-integration-test, verify, install, deploy] [DEBUG] Lifecycle clean -> [pre-clean, clean, post-clean] [DEBUG] Lifecycle site -> [pre-site, site, post-site, site-deploy] [DEBUG] === PROJECT BUILD PLAN ================================================ [DEBUG] Project: net.apjanke.antlrworks-jank:antlr-works-netbeans:2.6.0-SNAPSHOT [DEBUG] Dependencies (collect): [] [DEBUG] Dependencies (resolve): [compile] [DEBUG] Repositories (dependencies): [netbeans (http://bits.netbeans.org/nexus/content/groups/netbeans/, default, releases+snapshots), atricore (http://repository.atricore.org/m2-release-repository/, default, releases+snapshots), central (https://repo.maven.apache.org/maven2, default, releases)] [DEBUG] Repositories (plugins) : [central (https://repo.maven.apache.org/maven2, default, releases)] [DEBUG] ----------------------------------------------------------------------- [DEBUG] Goal: org.apache.maven.plugins:maven-resources-plugin:3.1.0:resources (default-resources) [DEBUG] Style: Regular [DEBUG] Configuration: ${maven.resources.skip} [DEBUG] ----------------------------------------------------------------------- [DEBUG] Goal: org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile (default-compile) [DEBUG] Style: Regular [DEBUG] Configuration: ${maven.compiler.compilerId} ${maven.compiler.compilerReuseStrategy} ${maven.compiler.compilerVersion} ${maven.compiler.debug} ${maven.compiler.debuglevel} ${encoding} ${maven.compiler.executable} ${maven.compiler.failOnError} ${maven.compiler.failOnWarning} ${maven.compiler.forceJavacCompilerUse} ${maven.compiler.fork} ${maven.compiler.maxmem} ${maven.compiler.meminitial} ${maven.compiler.optimize} ${maven.compiler.parameters} ${maven.compiler.release} ${maven.compiler.showDeprecation} ${maven.compiler.showWarnings} ${maven.main.skip} ${maven.compiler.skipMultiThreadWarning} 1.8 ${lastModGranularityMs} 1.8 ${maven.compiler.useIncrementalCompilation} ${maven.compiler.verbose} [DEBUG] ======================================================================= [DEBUG] Dependency collection stats: {ConflictMarker.analyzeTime=325749, ConflictMarker.markTime=168443, ConflictMarker.nodeCount=557, ConflictIdSorter.graphTime=273136, ConflictIdSorter.topsortTime=340644, ConflictIdSorter.conflictIdCount=80, ConflictIdSorter.conflictIdCycleCount=1, ConflictResolver.totalTime=1932070, ConflictResolver.conflictItemCount=555, DefaultDependencyCollector.collectTime=3687220, DefaultDependencyCollector.transformTime=3097345} [DEBUG] net.apjanke.antlrworks-jank:antlr-works-netbeans:nbm:2.6.0-SNAPSHOT [DEBUG] javax.annotation:javax.annotation-api:jar:1.3.2:compile [DEBUG] org.netbeans.api:org-netbeans-api-annotations-common:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-spi-palette:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-awt:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-dialogs:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-explorer:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-swing-tabcontrol:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-filesystems:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-loaders:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-api-scripting:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-api-templates:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-modules:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-nodes:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-text:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-util:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-util-lookup:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-windows:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-editor:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-api-progress:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-api-progress-nb:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-editor-document:jar:RELEASE112:compile [DEBUG] org.netbeans.modules:org-netbeans-modules-editor-fold-nbui:jar:RELEASE112:runtime [DEBUG] org.netbeans.api:org-netbeans-modules-editor-guards:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-editor-indent:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-editor-lib2:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-lexer:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-actions:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-filesystems-nb:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-editor-util:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-editor-fold:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-editor-settings-lib:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-util-ui:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-editor-lib:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-editor-mimelookup:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-editor-settings:jar:RELEASE112:compile [DEBUG] org.netbeans.modules:org-netbeans-modules-editor-settings-storage:jar:RELEASE112:compile [DEBUG] org.netbeans.modules:org-netbeans-modules-options-keymap:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-options-api:jar:RELEASE112:compile [DEBUG] org.netbeans.modules:org-netbeans-core:jar:RELEASE112:runtime [DEBUG] org.netbeans.modules:org-netbeans-bootstrap:jar:RELEASE112:runtime [DEBUG] org.netbeans.api:org-netbeans-modules-keyring:jar:RELEASE112:runtime [DEBUG] org.netbeans.api:org-netbeans-modules-sampler:jar:RELEASE112:runtime [DEBUG] org.netbeans.api:org-netbeans-swing-plaf:jar:RELEASE112:runtime [DEBUG] org.netbeans.api:org-openide-io:jar:RELEASE112:runtime [DEBUG] org.netbeans.api:org-netbeans-api-intent:jar:RELEASE112:runtime [DEBUG] org.netbeans.api:org-netbeans-api-io:jar:RELEASE112:runtime [DEBUG] org.netbeans.modules:org-netbeans-core-startup:jar:RELEASE112:runtime [DEBUG] org.netbeans.api:org-netbeans-libs-asm:jar:RELEASE112:runtime [DEBUG] org.ow2.asm:asm-all:jar:5.0.1:runtime [DEBUG] org.netbeans.modules:org-netbeans-core-startup-base:jar:RELEASE112:runtime [DEBUG] org.netbeans.api:org-netbeans-spi-quicksearch:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-swing-outline:jar:RELEASE112:compile [DEBUG] org.netbeans.modules:org-netbeans-modules-options-editor:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-spi-editor-hints-projects:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-editor-tools-storage:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-projectapi:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-projectuiapi:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-spi-editor-hints:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-spi-navigator:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-parsing-indexing:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-api-java-classpath:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-libs-lucene:jar:RELEASE112:compile [DEBUG] org.apache.lucene:lucene-core:jar:3.5.0:compile [DEBUG] org.netbeans.api:org-netbeans-modules-parsing-api:jar:RELEASE112:compile [DEBUG] org.netbeans.modules:org-netbeans-modules-parsing-lucene:jar:RELEASE112:runtime [DEBUG] org.netbeans.modules:org-netbeans-modules-masterfs:jar:RELEASE112:runtime [DEBUG] org.netbeans.modules:org-netbeans-modules-project-indexingbridge:jar:RELEASE112:runtime [DEBUG] org.netbeans.api:org-netbeans-modules-projectuiapi-base:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-queries:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-spi-tasklist:jar:RELEASE112:compile [DEBUG] org.antlr:antlr4-runtime:jar:4.8-1:compile [DEBUG] org.antlr:stringtemplate:jar:4.0.2:compile [DEBUG] org.antlr:antlr-runtime:jar:3.3:compile [DEBUG] org.antlr:antlr4:jar:4.8-1:compile [DEBUG] org.antlr:ST4:jar:4.3:compile [DEBUG] org.abego.treelayout:org.abego.treelayout.core:jar:1.0.3:compile [DEBUG] org.glassfish:javax.json:jar:1.0.4:compile [DEBUG] com.ibm.icu:icu4j:jar:61.1:compile [DEBUG] junit:junit:jar:4.13:test [DEBUG] org.hamcrest:hamcrest-core:jar:1.3:test [INFO] [INFO] --- maven-resources-plugin:3.1.0:resources (default-resources) @ antlr-works-netbeans --- [DEBUG] Dependency collection stats: {ConflictMarker.analyzeTime=59232, ConflictMarker.markTime=32909, ConflictMarker.nodeCount=68, ConflictIdSorter.graphTime=25016, ConflictIdSorter.topsortTime=17644, ConflictIdSorter.conflictIdCount=28, ConflictIdSorter.conflictIdCycleCount=0, ConflictResolver.totalTime=253453, ConflictResolver.conflictItemCount=67, DefaultDependencyCollector.collectTime=20716913, DefaultDependencyCollector.transformTime=434103} [DEBUG] org.apache.maven.plugins:maven-resources-plugin:jar:3.1.0 [DEBUG] org.apache.maven:maven-plugin-api:jar:3.0:compile [DEBUG] org.apache.maven:maven-artifact:jar:3.0:compile [DEBUG] org.sonatype.sisu:sisu-inject-plexus:jar:1.4.2:compile [DEBUG] org.sonatype.sisu:sisu-inject-bean:jar:1.4.2:compile [DEBUG] org.sonatype.sisu:sisu-guice:jar:noaop:2.1.7:compile [DEBUG] org.apache.maven:maven-core:jar:3.0:compile [DEBUG] org.apache.maven:maven-settings:jar:3.0:compile [DEBUG] org.apache.maven:maven-settings-builder:jar:3.0:compile [DEBUG] org.apache.maven:maven-repository-metadata:jar:3.0:compile [DEBUG] org.apache.maven:maven-model-builder:jar:3.0:compile [DEBUG] org.apache.maven:maven-aether-provider:jar:3.0:runtime [DEBUG] org.sonatype.aether:aether-impl:jar:1.7:compile [DEBUG] org.sonatype.aether:aether-spi:jar:1.7:compile [DEBUG] org.sonatype.aether:aether-api:jar:1.7:compile [DEBUG] org.sonatype.aether:aether-util:jar:1.7:compile [DEBUG] org.codehaus.plexus:plexus-classworlds:jar:2.2.3:compile [DEBUG] org.codehaus.plexus:plexus-component-annotations:jar:1.7.1:compile (version managed from default) [DEBUG] org.sonatype.plexus:plexus-sec-dispatcher:jar:1.3:compile [DEBUG] org.sonatype.plexus:plexus-cipher:jar:1.4:compile [DEBUG] org.apache.maven:maven-model:jar:3.0:compile [DEBUG] org.codehaus.plexus:plexus-utils:jar:3.1.0:compile [DEBUG] org.apache.maven.shared:maven-filtering:jar:3.1.1:compile [DEBUG] org.apache.maven.shared:maven-shared-utils:jar:3.0.0:compile [DEBUG] com.google.code.findbugs:jsr305:jar:2.0.1:compile [DEBUG] org.sonatype.plexus:plexus-build-api:jar:0.0.7:compile [DEBUG] commons-io:commons-io:jar:2.5:compile [DEBUG] org.codehaus.plexus:plexus-interpolation:jar:1.24:compile [DEBUG] Created new class realm plugin>org.apache.maven.plugins:maven-resources-plugin:3.1.0 [DEBUG] Importing foreign packages into class realm plugin>org.apache.maven.plugins:maven-resources-plugin:3.1.0 [DEBUG] Imported: < project>net.apjanke.antlrworks-jank:antlr-works-netbeans:2.6.0-SNAPSHOT [DEBUG] Populating class realm plugin>org.apache.maven.plugins:maven-resources-plugin:3.1.0 [DEBUG] Included: org.apache.maven.plugins:maven-resources-plugin:jar:3.1.0 [DEBUG] Included: org.sonatype.sisu:sisu-inject-bean:jar:1.4.2 [DEBUG] Included: org.sonatype.sisu:sisu-guice:jar:noaop:2.1.7 [DEBUG] Included: org.sonatype.aether:aether-util:jar:1.7 [DEBUG] Included: org.codehaus.plexus:plexus-component-annotations:jar:1.7.1 [DEBUG] Included: org.sonatype.plexus:plexus-sec-dispatcher:jar:1.3 [DEBUG] Included: org.sonatype.plexus:plexus-cipher:jar:1.4 [DEBUG] Included: org.codehaus.plexus:plexus-utils:jar:3.1.0 [DEBUG] Included: org.apache.maven.shared:maven-filtering:jar:3.1.1 [DEBUG] Included: org.apache.maven.shared:maven-shared-utils:jar:3.0.0 [DEBUG] Included: com.google.code.findbugs:jsr305:jar:2.0.1 [DEBUG] Included: org.sonatype.plexus:plexus-build-api:jar:0.0.7 [DEBUG] Included: commons-io:commons-io:jar:2.5 [DEBUG] Included: org.codehaus.plexus:plexus-interpolation:jar:1.24 [DEBUG] Configuring mojo org.apache.maven.plugins:maven-resources-plugin:3.1.0:resources from plugin realm ClassRealm[plugin>org.apache.maven.plugins:maven-resources-plugin:3.1.0, parent: jdk.internal.loader.ClassLoaders$AppClassLoader at 55054057] [DEBUG] Configuring mojo 'org.apache.maven.plugins:maven-resources-plugin:3.1.0:resources' with basic configurator --> [DEBUG] (f) addDefaultExcludes = true [DEBUG] (f) buildFilters = [] [DEBUG] (f) encoding = UTF-8 [DEBUG] (f) escapeWindowsPaths = true [DEBUG] (f) fileNameFiltering = false [DEBUG] (s) includeEmptyDirs = false [DEBUG] (s) outputDirectory = /Users/janke/local/repos/antlrworks-jank/antlr-works-netbeans/target/classes [DEBUG] (s) overwrite = false [DEBUG] (f) project = MavenProject: net.apjanke.antlrworks-jank:antlr-works-netbeans:2.6.0-SNAPSHOT @ /Users/janke/local/repos/antlrworks-jank/antlr-works-netbeans/pom.xml [DEBUG] (s) resources = [Resource {targetPath: null, filtering: false, FileSet {directory: /Users/janke/local/repos/antlrworks-jank/antlr-works-netbeans/src/main/resources, PatternSet [includes: {}, excludes: {}]}}] [DEBUG] (f) session = org.apache.maven.execution.MavenSession at 58472096 [DEBUG] (f) skip = false [DEBUG] (f) supportMultiLineFiltering = false [DEBUG] (f) useBuildFilters = true [DEBUG] (s) useDefaultDelimiters = true [DEBUG] -- end configuration -- [DEBUG] properties used {env.TERM=xterm-256color, java.specification.version=13, sun.arch.data.model=64, env.CLICOLOR=1, java.vendor.url=https://openjdk.java.net/, env.COLORFGBG=12;8, env.GOPATH=/Users/janke/local/go-work, sun.boot.library.path=/usr/local/Cellar/openjdk/13.0.2+8_2/libexec/openjdk.jdk/Contents/Home/lib, sun.java.command=org.codehaus.plexus.classworlds.launcher.Launcher -X -e compile, jdk.debug=release, maven.version=3.6.3, java.specification.vendor=Oracle Corporation, java.version.date=2020-01-14, version=2.6.0-SNAPSHOT, java.home=/usr/local/Cellar/openjdk/13.0.2+8_2/libexec/openjdk.jdk/Contents/Home, env.GUIEDITOR=subl, java.vm.specification.vendor=Oracle Corporation, java.specification.name=Java Platform API Specification, sun.management.compiler=HotSpot 64-Bit Tiered Compilers, env.LC_TERMINAL_VERSION=3.3.9, java.runtime.version=13.0.2+8, env.LSCOLORS=gxxxdxdxdxexexdxdxgxgx, env.PATH=/usr/local/sbin:/usr/local/lib/ruby/gems/2.7.0/bin:/usr/local/lib/ruby/gems/2.6.0/bin:/usr/local/opt/ruby/bin:/Users/janke/bin:/usr/local/bin:/usr/local/sbin:/usr/local/lib/ruby/gems/2.7.0/bin:/usr/local/lib/ruby/gems/2.6.0/bin:/usr/local/opt/ruby/bin:/Users/janke/bin:/usr/local/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Applications/VMware Fusion.app/Contents/Public:/Library/TeX/texbin:/usr/local/MacGPG2/bin:/usr/local/share/dotnet:/opt/X11/bin:~/.dotnet/tools:/Library/Frameworks/Mono.framework/Versions/Current/Commands:/Users/janke/local/go-work/bin:/Users/janke/.rvm/bin:/Users/janke/local/go-work/bin:/Users/janke/.rvm/bin, env.LS_COLORS=di=36:so=33:pi=33:ex=33:bd=34:cd=34:su=33:sg=33:tw=36:ow=36:ln=00;04, file.encoding=UTF-8, env.HOMEBREW_EDITOR=subl, env.HISTCONTROL=ignoredups, env.SHLVL=2, project.baseUri=file:/Users/janke/local/repos/antlrworks-jank/antlr-works-netbeans/, java.io.tmpdir=/var/folders/_4/9mx5ryp52bb_z6drbcbrhwl40000gn/T/, java.version=13.0.2, java.vm.specification.name=Java Virtual Machine Specification, netbeans.version=RELEASE112, java.library.path=/Users/janke/Library/Java/Extensions:/Library/Java/Extensions:/Network/Library/Java/Extensions:/System/Library/Java/Extensions:/usr/lib/java:., java.vendor=N/A, env.JAVA_MAIN_CLASS_11911=org.codehaus.plexus.classworlds.launcher.Launcher, classworlds.conf=/usr/local/Cellar/maven/3.6.3_1/libexec/bin/m2.conf, sun.io.unicode.encoding=UnicodeBig, env.LANG=en_US.UTF-8, env.HOMEBREW_SANDBOX=1, java.vm.specification.version=13, os.name=Mac OS X, env.DISPLAY=/private/tmp/com.apple.launchd.O2942FNRqP/org.macosforge.xquartz:0, release.username=apjanke, http.nonProxyHosts=local|*.local|169.254/16|*.169.254/16, maven.compiler.source=1.8, user.home=/Users/janke, env.XML_CATALOG_FILES=/usr/local/etc/xml/catalog, env.EDITOR=vi, maven.build.timestamp=2020-05-08T16:59:36Z, brandingToken=antlrworks2jank, env.COLORTERM=truecolor, env.Apple_PubSub_Socket_Render=/private/tmp/com.apple.launchd.YiSqoN3EU9/Render, env.ITERM_SESSION_ID=w0t0p0:71DF3FA8-5482-4070-8BD4-354B2D5AA3BB, env.ITERM_PROFILE=Solarized - Dark - apj, path.separator=:, os.version=10.14.6, java.vm.name=OpenJDK 64-Bit Server VM, env.SHELL=/bin/zsh, gpg.executable=gpg2, env.HISTSIZE=32768, os.arch=x86_64, env.HISTFILESIZE=32768, maven.multiModuleProjectDirectory=/Users/janke/local/repos/antlrworks-jank, env.MAVEN_PROJECTBASEDIR=/Users/janke/local/repos/antlrworks-jank, java.vm.info=mixed mode, sharing, env.USER=janke, java.class.version=57.0, env.HOMEBREW_NO_AUTO_UPDATE=1, sun.jnu.encoding=UTF-8, env.HISTIGNORE=ls:ls *:cd:cd -:pwd:exit:date:* --help, env.VISUAL=subl -w, maven.build.version=Apache Maven 3.6.3 (cecedd343002696d0abb50b32b541b8a6ba2883f), maven.home=/usr/local/Cellar/maven/3.6.3_1/libexec, env.JAVA_HOME=/usr/local/opt/openjdk, env.LC_TERMINAL=iTerm2, file.separator=/, env.LESS=-R, java.vm.compressedOopsMode=Non-zero disjoint base, line.separator= , env.TERM_PROGRAM_VERSION=3.3.9, user.name=janke, env.XPC_FLAGS=0x0, env.LOGNAME=janke, env.__CF_USER_TEXT_ENCODING=0x1F5:0x0:0x0, env.TERM_SESSION_ID=w0t0p0:71DF3FA8-5482-4070-8BD4-354B2D5AA3BB, env.SSH_AUTH_SOCK=/private/tmp/com.apple.launchd.9RGvwmJ5GD/Listeners, env.TERMINFO_DIRS=/Users/janke/.terminfo:/usr/local/share/terminfo:, maven.compiler.target=1.8, env.TMPDIR=/var/folders/_4/9mx5ryp52bb_z6drbcbrhwl40000gn/T/, library.jansi.path=/usr/local/Cellar/maven/3.6.3_1/libexec/lib/jansi-native, env.TERM_PROGRAM=iTerm.app, socksNonProxyHosts=local|*.local|169.254/16|*.169.254/16, env.OLDPWD=/Users/janke/local/repos/antlrworks-jank, env.PWD=/Users/janke/local/repos/antlrworks-jank, env.PAGER=less, java.class.path=/usr/local/Cellar/maven/3.6.3_1/libexec/boot/plexus-classworlds-2.6.0.jar, env.HOME=/Users/janke, java.vm.vendor=Oracle Corporation, gpg.keyname=24AF1EA5, maven.conf=/usr/local/Cellar/maven/3.6.3_1/libexec/conf, env.HOMEBREW_DEVELOPER=1, sun.java.launcher=SUN_STANDARD, user.country=US, sun.cpu.endian=little, user.language=en, env.XPC_SERVICE_NAME=0, ftp.nonProxyHosts=local|*.local|169.254/16|*.169.254/16, java.runtime.name=OpenJDK Runtime Environment, project.build.sourceEncoding=UTF-8, env.MAVEN_CMD_LINE_ARGS= -X -e compile, java.vendor.url.bug=https://bugreport.java.com/bugreport/, user.dir=/Users/janke/local/repos/antlrworks-jank, antlr.version=4.8-1, java.vm.version=13.0.2+8} [INFO] Using 'UTF-8' encoding to copy filtered resources. [DEBUG] resource with targetPath null directory /Users/janke/local/repos/antlrworks-jank/antlr-works-netbeans/src/main/resources excludes [] includes [] [INFO] skip non existing resourceDirectory /Users/janke/local/repos/antlrworks-jank/antlr-works-netbeans/src/main/resources [DEBUG] no use filter components [INFO] [INFO] --- maven-compiler-plugin:3.8.1:compile (default-compile) @ antlr-works-netbeans --- [DEBUG] Dependency collection stats: {ConflictMarker.analyzeTime=72495, ConflictMarker.markTime=45697, ConflictMarker.nodeCount=118, ConflictIdSorter.graphTime=31296, ConflictIdSorter.topsortTime=24159, ConflictIdSorter.conflictIdCount=45, ConflictIdSorter.conflictIdCycleCount=0, ConflictResolver.totalTime=348115, ConflictResolver.conflictItemCount=72, DefaultDependencyCollector.collectTime=2692884, DefaultDependencyCollector.transformTime=539570} [DEBUG] org.apache.maven.plugins:maven-compiler-plugin:jar:3.8.1 [DEBUG] org.apache.maven:maven-plugin-api:jar:3.0:compile [DEBUG] org.apache.maven:maven-model:jar:3.0:compile [DEBUG] org.sonatype.sisu:sisu-inject-plexus:jar:1.4.2:compile [DEBUG] org.sonatype.sisu:sisu-inject-bean:jar:1.4.2:compile [DEBUG] org.sonatype.sisu:sisu-guice:jar:noaop:2.1.7:compile [DEBUG] org.apache.maven:maven-artifact:jar:3.0:compile [DEBUG] org.codehaus.plexus:plexus-utils:jar:2.0.4:compile [DEBUG] org.apache.maven:maven-core:jar:3.0:compile [DEBUG] org.apache.maven:maven-settings:jar:3.0:compile [DEBUG] org.apache.maven:maven-settings-builder:jar:3.0:compile [DEBUG] org.apache.maven:maven-repository-metadata:jar:3.0:compile [DEBUG] org.apache.maven:maven-model-builder:jar:3.0:compile [DEBUG] org.apache.maven:maven-aether-provider:jar:3.0:runtime [DEBUG] org.sonatype.aether:aether-impl:jar:1.7:compile [DEBUG] org.sonatype.aether:aether-spi:jar:1.7:compile [DEBUG] org.sonatype.aether:aether-api:jar:1.7:compile [DEBUG] org.sonatype.aether:aether-util:jar:1.7:compile [DEBUG] org.codehaus.plexus:plexus-interpolation:jar:1.14:compile [DEBUG] org.codehaus.plexus:plexus-classworlds:jar:2.2.3:compile [DEBUG] org.codehaus.plexus:plexus-component-annotations:jar:1.7.1:compile (version managed from default) [DEBUG] org.sonatype.plexus:plexus-sec-dispatcher:jar:1.3:compile [DEBUG] org.sonatype.plexus:plexus-cipher:jar:1.4:compile [DEBUG] org.apache.maven.shared:maven-shared-utils:jar:3.2.1:compile [DEBUG] commons-io:commons-io:jar:2.5:compile [DEBUG] org.apache.maven.shared:maven-shared-incremental:jar:1.1:compile [DEBUG] org.codehaus.plexus:plexus-java:jar:0.9.10:compile [DEBUG] org.ow2.asm:asm:jar:6.2:compile [DEBUG] com.thoughtworks.qdox:qdox:jar:2.0-M9:compile (version managed from default) [DEBUG] org.codehaus.plexus:plexus-compiler-api:jar:2.8.4:compile [DEBUG] org.codehaus.plexus:plexus-compiler-manager:jar:2.8.4:compile [DEBUG] org.codehaus.plexus:plexus-compiler-javac:jar:2.8.4:runtime [DEBUG] Created new class realm plugin>org.apache.maven.plugins:maven-compiler-plugin:3.8.1-735602335 [DEBUG] Importing foreign packages into class realm plugin>org.apache.maven.plugins:maven-compiler-plugin:3.8.1-735602335 [DEBUG] Imported: < project>net.apjanke.antlrworks-jank:antlr-works-netbeans:2.6.0-SNAPSHOT [DEBUG] Populating class realm plugin>org.apache.maven.plugins:maven-compiler-plugin:3.8.1-735602335 [DEBUG] Included: org.apache.maven.plugins:maven-compiler-plugin:jar:3.8.1 [DEBUG] Included: org.sonatype.sisu:sisu-inject-bean:jar:1.4.2 [DEBUG] Included: org.sonatype.sisu:sisu-guice:jar:noaop:2.1.7 [DEBUG] Included: org.codehaus.plexus:plexus-utils:jar:2.0.4 [DEBUG] Included: org.sonatype.aether:aether-util:jar:1.7 [DEBUG] Included: org.codehaus.plexus:plexus-interpolation:jar:1.14 [DEBUG] Included: org.codehaus.plexus:plexus-component-annotations:jar:1.7.1 [DEBUG] Included: org.sonatype.plexus:plexus-sec-dispatcher:jar:1.3 [DEBUG] Included: org.sonatype.plexus:plexus-cipher:jar:1.4 [DEBUG] Included: org.apache.maven.shared:maven-shared-utils:jar:3.2.1 [DEBUG] Included: commons-io:commons-io:jar:2.5 [DEBUG] Included: org.apache.maven.shared:maven-shared-incremental:jar:1.1 [DEBUG] Included: org.codehaus.plexus:plexus-java:jar:0.9.10 [DEBUG] Included: org.ow2.asm:asm:jar:6.2 [DEBUG] Included: com.thoughtworks.qdox:qdox:jar:2.0-M9 [DEBUG] Included: org.codehaus.plexus:plexus-compiler-api:jar:2.8.4 [DEBUG] Included: org.codehaus.plexus:plexus-compiler-manager:jar:2.8.4 [DEBUG] Included: org.codehaus.plexus:plexus-compiler-javac:jar:2.8.4 [DEBUG] Configuring mojo org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile from plugin realm ClassRealm[plugin>org.apache.maven.plugins:maven-compiler-plugin:3.8.1-735602335, parent: jdk.internal.loader.ClassLoaders$AppClassLoader at 55054057] [DEBUG] Configuring mojo 'org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile' with basic configurator --> [DEBUG] (f) basedir = /Users/janke/local/repos/antlrworks-jank/antlr-works-netbeans [DEBUG] (f) buildDirectory = /Users/janke/local/repos/antlrworks-jank/antlr-works-netbeans/target [DEBUG] (f) compilePath = [/Users/janke/local/repos/antlrworks-jank/antlr-works-netbeans/target/classes, /Users/janke/.m2/repository/javax/annotation/javax.annotation-api/1.3.2/javax.annotation-api-1.3.2.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-api-annotations-common/RELEASE112/org-netbeans-api-annotations-common-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-spi-palette/RELEASE112/org-netbeans-spi-palette-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-awt/RELEASE112/org-openide-awt-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-dialogs/RELEASE112/org-openide-dialogs-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-explorer/RELEASE112/org-openide-explorer-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-swing-tabcontrol/RELEASE112/org-netbeans-swing-tabcontrol-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-filesystems/RELEASE112/org-openide-filesystems-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-loaders/RELEASE112/org-openide-loaders-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-api-scripting/RELEASE112/org-netbeans-api-scripting-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-api-templates/RELEASE112/org-netbeans-api-templates-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-modules/RELEASE112/org-openide-modules-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-nodes/RELEASE112/org-openide-nodes-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-text/RELEASE112/org-openide-text-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-util/RELEASE112/org-openide-util-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-util-lookup/RELEASE112/org-openide-util-lookup-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-windows/RELEASE112/org-openide-windows-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor/RELEASE112/org-netbeans-modules-editor-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-api-progress/RELEASE112/org-netbeans-api-progress-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-api-progress-nb/RELEASE112/org-netbeans-api-progress-nb-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-document/RELEASE112/org-netbeans-modules-editor-document-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-guards/RELEASE112/org-netbeans-modules-editor-guards-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-indent/RELEASE112/org-netbeans-modules-editor-indent-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-lib2/RELEASE112/org-netbeans-modules-editor-lib2-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-lexer/RELEASE112/org-netbeans-modules-lexer-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-actions/RELEASE112/org-openide-actions-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-filesystems-nb/RELEASE112/org-openide-filesystems-nb-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-util/RELEASE112/org-netbeans-modules-editor-util-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-fold/RELEASE112/org-netbeans-modules-editor-fold-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-settings-lib/RELEASE112/org-netbeans-modules-editor-settings-lib-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-util-ui/RELEASE112/org-openide-util-ui-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-lib/RELEASE112/org-netbeans-modules-editor-lib-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-mimelookup/RELEASE112/org-netbeans-modules-editor-mimelookup-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-settings/RELEASE112/org-netbeans-modules-editor-settings-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/modules/org-netbeans-modules-editor-settings-storage/RELEASE112/org-netbeans-modules-editor-settings-storage-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/modules/org-netbeans-modules-options-keymap/RELEASE112/org-netbeans-modules-options-keymap-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-options-api/RELEASE112/org-netbeans-modules-options-api-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-spi-quicksearch/RELEASE112/org-netbeans-spi-quicksearch-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-swing-outline/RELEASE112/org-netbeans-swing-outline-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/modules/org-netbeans-modules-options-editor/RELEASE112/org-netbeans-modules-options-editor-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-spi-editor-hints-projects/RELEASE112/org-netbeans-spi-editor-hints-projects-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-tools-storage/RELEASE112/org-netbeans-modules-editor-tools-storage-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-projectapi/RELEASE112/org-netbeans-modules-projectapi-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-projectuiapi/RELEASE112/org-netbeans-modules-projectuiapi-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-spi-editor-hints/RELEASE112/org-netbeans-spi-editor-hints-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-spi-navigator/RELEASE112/org-netbeans-spi-navigator-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-parsing-indexing/RELEASE112/org-netbeans-modules-parsing-indexing-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-api-java-classpath/RELEASE112/org-netbeans-api-java-classpath-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-libs-lucene/RELEASE112/org-netbeans-libs-lucene-RELEASE112.jar, /Users/janke/.m2/repository/org/apache/lucene/lucene-core/3.5.0/lucene-core-3.5.0.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-parsing-api/RELEASE112/org-netbeans-modules-parsing-api-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-projectuiapi-base/RELEASE112/org-netbeans-modules-projectuiapi-base-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-queries/RELEASE112/org-netbeans-modules-queries-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-spi-tasklist/RELEASE112/org-netbeans-spi-tasklist-RELEASE112.jar, /Users/janke/.m2/repository/org/antlr/antlr4-runtime/4.8-1/antlr4-runtime-4.8-1.jar, /Users/janke/.m2/repository/org/antlr/stringtemplate/4.0.2/stringtemplate-4.0.2.jar, /Users/janke/.m2/repository/org/antlr/antlr-runtime/3.3/antlr-runtime-3.3.jar, /Users/janke/.m2/repository/org/antlr/antlr4/4.8-1/antlr4-4.8-1.jar, /Users/janke/.m2/repository/org/antlr/ST4/4.3/ST4-4.3.jar, /Users/janke/.m2/repository/org/abego/treelayout/org.abego.treelayout.core/1.0.3/org.abego.treelayout.core-1.0.3.jar, /Users/janke/.m2/repository/org/glassfish/javax.json/1.0.4/javax.json-1.0.4.jar, /Users/janke/.m2/repository/com/ibm/icu/icu4j/61.1/icu4j-61.1.jar] [DEBUG] (f) compileSourceRoots = [/Users/janke/local/repos/antlrworks-jank/antlr-works-netbeans/src/main/java] [DEBUG] (f) compilerId = javac [DEBUG] (f) debug = true [DEBUG] (f) encoding = UTF-8 [DEBUG] (f) failOnError = true [DEBUG] (f) failOnWarning = false [DEBUG] (f) forceJavacCompilerUse = false [DEBUG] (f) fork = false [DEBUG] (f) generatedSourcesDirectory = /Users/janke/local/repos/antlrworks-jank/antlr-works-netbeans/target/generated-sources/annotations [DEBUG] (f) mojoExecution = org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile {execution: default-compile} [DEBUG] (f) optimize = false [DEBUG] (f) outputDirectory = /Users/janke/local/repos/antlrworks-jank/antlr-works-netbeans/target/classes [DEBUG] (f) parameters = false [DEBUG] (f) project = MavenProject: net.apjanke.antlrworks-jank:antlr-works-netbeans:2.6.0-SNAPSHOT @ /Users/janke/local/repos/antlrworks-jank/antlr-works-netbeans/pom.xml [DEBUG] (f) projectArtifact = net.apjanke.antlrworks-jank:antlr-works-netbeans:nbm:2.6.0-SNAPSHOT [DEBUG] (f) session = org.apache.maven.execution.MavenSession at 58472096 [DEBUG] (f) showDeprecation = false [DEBUG] (f) showWarnings = false [DEBUG] (f) skipMultiThreadWarning = false [DEBUG] (f) source = 1.8 [DEBUG] (f) staleMillis = 0 [DEBUG] (s) target = 1.8 [DEBUG] (f) useIncrementalCompilation = true [DEBUG] (f) verbose = false [DEBUG] -- end configuration -- [DEBUG] Using compiler 'javac'. [DEBUG] Adding /Users/janke/local/repos/antlrworks-jank/antlr-works-netbeans/target/generated-sources/annotations to compile source roots: /Users/janke/local/repos/antlrworks-jank/antlr-works-netbeans/src/main/java [DEBUG] New compile source roots: /Users/janke/local/repos/antlrworks-jank/antlr-works-netbeans/src/main/java /Users/janke/local/repos/antlrworks-jank/antlr-works-netbeans/target/generated-sources/annotations [DEBUG] CompilerReuseStrategy: reuseCreated [DEBUG] useIncrementalCompilation enabled [INFO] Nothing to compile - all classes are up to date [INFO] [INFO] -----------< net.apjanke.antlrworks-jank:tvl-editor-actions >----------- [INFO] Building tvl-editor-actions 2.6.0-SNAPSHOT [5/9] [INFO] --------------------------------[ jar ]--------------------------------- [DEBUG] Lifecycle default -> [validate, initialize, generate-sources, process-sources, generate-resources, process-resources, compile, process-classes, generate-test-sources, process-test-sources, generate-test-resources, process-test-resources, test-compile, process-test-classes, test, prepare-package, package, pre-integration-test, integration-test, post-integration-test, verify, install, deploy] [DEBUG] Lifecycle clean -> [pre-clean, clean, post-clean] [DEBUG] Lifecycle site -> [pre-site, site, post-site, site-deploy] [DEBUG] Lifecycle default -> [validate, initialize, generate-sources, process-sources, generate-resources, process-resources, compile, process-classes, generate-test-sources, process-test-sources, generate-test-resources, process-test-resources, test-compile, process-test-classes, test, prepare-package, package, pre-integration-test, integration-test, post-integration-test, verify, install, deploy] [DEBUG] Lifecycle clean -> [pre-clean, clean, post-clean] [DEBUG] Lifecycle site -> [pre-site, site, post-site, site-deploy] [DEBUG] Lifecycle default -> [validate, initialize, generate-sources, process-sources, generate-resources, process-resources, compile, process-classes, generate-test-sources, process-test-sources, generate-test-resources, process-test-resources, test-compile, process-test-classes, test, prepare-package, package, pre-integration-test, integration-test, post-integration-test, verify, install, deploy] [DEBUG] Lifecycle clean -> [pre-clean, clean, post-clean] [DEBUG] Lifecycle site -> [pre-site, site, post-site, site-deploy] [DEBUG] === PROJECT BUILD PLAN ================================================ [DEBUG] Project: net.apjanke.antlrworks-jank:tvl-editor-actions:2.6.0-SNAPSHOT [DEBUG] Dependencies (collect): [] [DEBUG] Dependencies (resolve): [compile] [DEBUG] Repositories (dependencies): [netbeans (http://bits.netbeans.org/nexus/content/groups/netbeans/, default, releases+snapshots), atricore (http://repository.atricore.org/m2-release-repository/, default, releases+snapshots), central (https://repo.maven.apache.org/maven2, default, releases)] [DEBUG] Repositories (plugins) : [central (https://repo.maven.apache.org/maven2, default, releases)] [DEBUG] ----------------------------------------------------------------------- [DEBUG] Goal: org.apache.maven.plugins:maven-resources-plugin:2.6:resources (default-resources) [DEBUG] Style: Regular [DEBUG] Configuration: ${encoding} ${maven.resources.escapeString} ${maven.resources.escapeWindowsPaths} ${maven.resources.includeEmptyDirs} ${maven.resources.overwrite} ${maven.resources.supportMultiLineFiltering} [DEBUG] ----------------------------------------------------------------------- [DEBUG] Goal: org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile (default-compile) [DEBUG] Style: Regular [DEBUG] Configuration: ${maven.compiler.compilerId} ${maven.compiler.compilerReuseStrategy} ${maven.compiler.compilerVersion} ${maven.compiler.debug} ${maven.compiler.debuglevel} ${encoding} ${maven.compiler.executable} ${maven.compiler.failOnError} ${maven.compiler.failOnWarning} ${maven.compiler.forceJavacCompilerUse} ${maven.compiler.fork} ${maven.compiler.maxmem} ${maven.compiler.meminitial} ${maven.compiler.optimize} ${maven.compiler.parameters} ${maven.compiler.release} ${maven.compiler.showDeprecation} ${maven.compiler.showWarnings} ${maven.main.skip} ${maven.compiler.skipMultiThreadWarning} 1.8 ${lastModGranularityMs} 1.8 ${maven.compiler.useIncrementalCompilation} ${maven.compiler.verbose} [DEBUG] ======================================================================= [DEBUG] Dependency collection stats: {ConflictMarker.analyzeTime=376294, ConflictMarker.markTime=177446, ConflictMarker.nodeCount=544, ConflictIdSorter.graphTime=321537, ConflictIdSorter.topsortTime=59766, ConflictIdSorter.conflictIdCount=72, ConflictIdSorter.conflictIdCycleCount=0, ConflictResolver.totalTime=1414233, ConflictResolver.conflictItemCount=543, DefaultDependencyCollector.collectTime=2639083, DefaultDependencyCollector.transformTime=2414681} [DEBUG] net.apjanke.antlrworks-jank:tvl-editor-actions:jar:2.6.0-SNAPSHOT [DEBUG] javax.annotation:javax.annotation-api:jar:1.3.2:compile [DEBUG] org.netbeans.api:org-netbeans-api-annotations-common:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-spi-palette:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-awt:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-dialogs:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-explorer:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-swing-tabcontrol:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-filesystems:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-loaders:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-api-scripting:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-api-templates:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-modules:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-nodes:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-text:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-util:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-util-lookup:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-windows:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-editor:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-api-progress:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-api-progress-nb:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-editor-document:jar:RELEASE112:compile [DEBUG] org.netbeans.modules:org-netbeans-modules-editor-fold-nbui:jar:RELEASE112:runtime [DEBUG] org.netbeans.api:org-netbeans-modules-editor-guards:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-editor-indent:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-editor-lib2:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-lexer:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-actions:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-filesystems-nb:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-editor-util:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-editor-fold:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-editor-settings-lib:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-util-ui:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-editor-lib:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-editor-mimelookup:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-editor-settings:jar:RELEASE112:compile [DEBUG] org.netbeans.modules:org-netbeans-modules-editor-settings-storage:jar:RELEASE112:compile [DEBUG] org.netbeans.modules:org-netbeans-modules-options-keymap:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-options-api:jar:RELEASE112:compile [DEBUG] org.netbeans.modules:org-netbeans-core:jar:RELEASE112:runtime [DEBUG] org.netbeans.modules:org-netbeans-bootstrap:jar:RELEASE112:runtime [DEBUG] org.netbeans.api:org-netbeans-modules-keyring:jar:RELEASE112:runtime [DEBUG] org.netbeans.api:org-netbeans-modules-sampler:jar:RELEASE112:runtime [DEBUG] org.netbeans.api:org-netbeans-swing-plaf:jar:RELEASE112:runtime [DEBUG] org.netbeans.api:org-openide-io:jar:RELEASE112:runtime [DEBUG] org.netbeans.api:org-netbeans-api-intent:jar:RELEASE112:runtime [DEBUG] org.netbeans.api:org-netbeans-api-io:jar:RELEASE112:runtime [DEBUG] org.netbeans.modules:org-netbeans-core-startup:jar:RELEASE112:runtime [DEBUG] org.netbeans.api:org-netbeans-libs-asm:jar:RELEASE112:runtime [DEBUG] org.ow2.asm:asm-all:jar:5.0.1:runtime [DEBUG] org.netbeans.modules:org-netbeans-core-startup-base:jar:RELEASE112:runtime [DEBUG] org.netbeans.api:org-netbeans-spi-quicksearch:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-swing-outline:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-spi-editor-hints-projects:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-editor-tools-storage:jar:RELEASE112:compile [DEBUG] org.netbeans.modules:org-netbeans-modules-options-editor:jar:RELEASE112:runtime [DEBUG] org.netbeans.api:org-netbeans-modules-projectapi:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-projectuiapi:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-spi-editor-hints:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-spi-navigator:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-parsing-indexing:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-api-java-classpath:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-libs-lucene:jar:RELEASE112:compile [DEBUG] org.apache.lucene:lucene-core:jar:3.5.0:compile [DEBUG] org.netbeans.api:org-netbeans-modules-parsing-api:jar:RELEASE112:compile [DEBUG] org.netbeans.modules:org-netbeans-modules-parsing-lucene:jar:RELEASE112:runtime [DEBUG] org.netbeans.modules:org-netbeans-modules-masterfs:jar:RELEASE112:runtime [DEBUG] org.netbeans.modules:org-netbeans-modules-project-indexingbridge:jar:RELEASE112:runtime [DEBUG] org.netbeans.api:org-netbeans-modules-projectuiapi-base:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-queries:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-spi-tasklist:jar:RELEASE112:compile [DEBUG] junit:junit:jar:4.13:test [DEBUG] org.hamcrest:hamcrest-core:jar:1.3:test [INFO] [INFO] --- maven-resources-plugin:2.6:resources (default-resources) @ tvl-editor-actions --- [DEBUG] Configuring mojo org.apache.maven.plugins:maven-resources-plugin:2.6:resources from plugin realm ClassRealm[plugin>org.apache.maven.plugins:maven-resources-plugin:2.6, parent: jdk.internal.loader.ClassLoaders$AppClassLoader at 55054057] [DEBUG] Configuring mojo 'org.apache.maven.plugins:maven-resources-plugin:2.6:resources' with basic configurator --> [DEBUG] (f) buildFilters = [] [DEBUG] (f) encoding = UTF-8 [DEBUG] (f) escapeWindowsPaths = true [DEBUG] (s) includeEmptyDirs = false [DEBUG] (s) outputDirectory = /Users/janke/local/repos/antlrworks-jank/tvl-editor-actions/target/classes [DEBUG] (s) overwrite = false [DEBUG] (f) project = MavenProject: net.apjanke.antlrworks-jank:tvl-editor-actions:2.6.0-SNAPSHOT @ /Users/janke/local/repos/antlrworks-jank/tvl-editor-actions/pom.xml [DEBUG] (s) resources = [Resource {targetPath: null, filtering: false, FileSet {directory: /Users/janke/local/repos/antlrworks-jank/tvl-editor-actions/src/main/resources, PatternSet [includes: {}, excludes: {}]}}] [DEBUG] (f) session = org.apache.maven.execution.MavenSession at 58472096 [DEBUG] (f) supportMultiLineFiltering = false [DEBUG] (f) useBuildFilters = true [DEBUG] (s) useDefaultDelimiters = true [DEBUG] -- end configuration -- [DEBUG] properties used {env.TERM=xterm-256color, java.specification.version=13, sun.arch.data.model=64, env.CLICOLOR=1, java.vendor.url=https://openjdk.java.net/, env.COLORFGBG=12;8, env.GOPATH=/Users/janke/local/go-work, sun.boot.library.path=/usr/local/Cellar/openjdk/13.0.2+8_2/libexec/openjdk.jdk/Contents/Home/lib, sun.java.command=org.codehaus.plexus.classworlds.launcher.Launcher -X -e compile, jdk.debug=release, maven.version=3.6.3, java.specification.vendor=Oracle Corporation, java.version.date=2020-01-14, version=2.6.0-SNAPSHOT, java.home=/usr/local/Cellar/openjdk/13.0.2+8_2/libexec/openjdk.jdk/Contents/Home, env.GUIEDITOR=subl, java.vm.specification.vendor=Oracle Corporation, java.specification.name=Java Platform API Specification, sun.management.compiler=HotSpot 64-Bit Tiered Compilers, env.LC_TERMINAL_VERSION=3.3.9, java.runtime.version=13.0.2+8, env.LSCOLORS=gxxxdxdxdxexexdxdxgxgx, env.PATH=/usr/local/sbin:/usr/local/lib/ruby/gems/2.7.0/bin:/usr/local/lib/ruby/gems/2.6.0/bin:/usr/local/opt/ruby/bin:/Users/janke/bin:/usr/local/bin:/usr/local/sbin:/usr/local/lib/ruby/gems/2.7.0/bin:/usr/local/lib/ruby/gems/2.6.0/bin:/usr/local/opt/ruby/bin:/Users/janke/bin:/usr/local/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Applications/VMware Fusion.app/Contents/Public:/Library/TeX/texbin:/usr/local/MacGPG2/bin:/usr/local/share/dotnet:/opt/X11/bin:~/.dotnet/tools:/Library/Frameworks/Mono.framework/Versions/Current/Commands:/Users/janke/local/go-work/bin:/Users/janke/.rvm/bin:/Users/janke/local/go-work/bin:/Users/janke/.rvm/bin, env.LS_COLORS=di=36:so=33:pi=33:ex=33:bd=34:cd=34:su=33:sg=33:tw=36:ow=36:ln=00;04, file.encoding=UTF-8, env.HOMEBREW_EDITOR=subl, env.HISTCONTROL=ignoredups, env.SHLVL=2, java.io.tmpdir=/var/folders/_4/9mx5ryp52bb_z6drbcbrhwl40000gn/T/, java.version=13.0.2, java.vm.specification.name=Java Virtual Machine Specification, netbeans.version=RELEASE112, java.library.path=/Users/janke/Library/Java/Extensions:/Library/Java/Extensions:/Network/Library/Java/Extensions:/System/Library/Java/Extensions:/usr/lib/java:., java.vendor=N/A, env.JAVA_MAIN_CLASS_11911=org.codehaus.plexus.classworlds.launcher.Launcher, classworlds.conf=/usr/local/Cellar/maven/3.6.3_1/libexec/bin/m2.conf, sun.io.unicode.encoding=UnicodeBig, env.LANG=en_US.UTF-8, env.HOMEBREW_SANDBOX=1, java.vm.specification.version=13, os.name=Mac OS X, env.DISPLAY=/private/tmp/com.apple.launchd.O2942FNRqP/org.macosforge.xquartz:0, release.username=apjanke, http.nonProxyHosts=local|*.local|169.254/16|*.169.254/16, maven.compiler.source=1.8, user.home=/Users/janke, env.XML_CATALOG_FILES=/usr/local/etc/xml/catalog, env.EDITOR=vi, brandingToken=antlrworks2jank, env.COLORTERM=truecolor, env.Apple_PubSub_Socket_Render=/private/tmp/com.apple.launchd.YiSqoN3EU9/Render, env.ITERM_SESSION_ID=w0t0p0:71DF3FA8-5482-4070-8BD4-354B2D5AA3BB, env.ITERM_PROFILE=Solarized - Dark - apj, path.separator=:, os.version=10.14.6, java.vm.name=OpenJDK 64-Bit Server VM, env.SHELL=/bin/zsh, gpg.executable=gpg2, env.HISTSIZE=32768, os.arch=x86_64, env.HISTFILESIZE=32768, maven.multiModuleProjectDirectory=/Users/janke/local/repos/antlrworks-jank, env.MAVEN_PROJECTBASEDIR=/Users/janke/local/repos/antlrworks-jank, java.vm.info=mixed mode, sharing, env.USER=janke, java.class.version=57.0, env.HOMEBREW_NO_AUTO_UPDATE=1, sun.jnu.encoding=UTF-8, env.HISTIGNORE=ls:ls *:cd:cd -:pwd:exit:date:* --help, env.VISUAL=subl -w, maven.build.version=Apache Maven 3.6.3 (cecedd343002696d0abb50b32b541b8a6ba2883f), maven.home=/usr/local/Cellar/maven/3.6.3_1/libexec, env.JAVA_HOME=/usr/local/opt/openjdk, env.LC_TERMINAL=iTerm2, file.separator=/, env.LESS=-R, java.vm.compressedOopsMode=Non-zero disjoint base, line.separator= , env.TERM_PROGRAM_VERSION=3.3.9, user.name=janke, env.XPC_FLAGS=0x0, env.LOGNAME=janke, env.__CF_USER_TEXT_ENCODING=0x1F5:0x0:0x0, env.TERM_SESSION_ID=w0t0p0:71DF3FA8-5482-4070-8BD4-354B2D5AA3BB, env.SSH_AUTH_SOCK=/private/tmp/com.apple.launchd.9RGvwmJ5GD/Listeners, env.TERMINFO_DIRS=/Users/janke/.terminfo:/usr/local/share/terminfo:, maven.compiler.target=1.8, env.TMPDIR=/var/folders/_4/9mx5ryp52bb_z6drbcbrhwl40000gn/T/, library.jansi.path=/usr/local/Cellar/maven/3.6.3_1/libexec/lib/jansi-native, env.TERM_PROGRAM=iTerm.app, socksNonProxyHosts=local|*.local|169.254/16|*.169.254/16, env.OLDPWD=/Users/janke/local/repos/antlrworks-jank, env.PWD=/Users/janke/local/repos/antlrworks-jank, env.PAGER=less, java.class.path=/usr/local/Cellar/maven/3.6.3_1/libexec/boot/plexus-classworlds-2.6.0.jar, env.HOME=/Users/janke, java.vm.vendor=Oracle Corporation, gpg.keyname=24AF1EA5, maven.conf=/usr/local/Cellar/maven/3.6.3_1/libexec/conf, env.HOMEBREW_DEVELOPER=1, sun.java.launcher=SUN_STANDARD, user.country=US, sun.cpu.endian=little, user.language=en, env.XPC_SERVICE_NAME=0, ftp.nonProxyHosts=local|*.local|169.254/16|*.169.254/16, java.runtime.name=OpenJDK Runtime Environment, project.build.sourceEncoding=UTF-8, env.MAVEN_CMD_LINE_ARGS= -X -e compile, java.vendor.url.bug=https://bugreport.java.com/bugreport/, user.dir=/Users/janke/local/repos/antlrworks-jank, antlr.version=4.8-1, java.vm.version=13.0.2+8} [INFO] Using 'UTF-8' encoding to copy filtered resources. [DEBUG] resource with targetPath null directory /Users/janke/local/repos/antlrworks-jank/tvl-editor-actions/src/main/resources excludes [] includes [] [INFO] skip non existing resourceDirectory /Users/janke/local/repos/antlrworks-jank/tvl-editor-actions/src/main/resources [DEBUG] no use filter components [INFO] [INFO] --- maven-compiler-plugin:3.8.1:compile (default-compile) @ tvl-editor-actions --- [DEBUG] Configuring mojo org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile from plugin realm ClassRealm[plugin>org.apache.maven.plugins:maven-compiler-plugin:3.8.1, parent: jdk.internal.loader.ClassLoaders$AppClassLoader at 55054057] [DEBUG] Configuring mojo 'org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile' with basic configurator --> [DEBUG] (f) basedir = /Users/janke/local/repos/antlrworks-jank/tvl-editor-actions [DEBUG] (f) buildDirectory = /Users/janke/local/repos/antlrworks-jank/tvl-editor-actions/target [DEBUG] (f) compilePath = [/Users/janke/local/repos/antlrworks-jank/tvl-editor-actions/target/classes, /Users/janke/.m2/repository/javax/annotation/javax.annotation-api/1.3.2/javax.annotation-api-1.3.2.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-api-annotations-common/RELEASE112/org-netbeans-api-annotations-common-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-spi-palette/RELEASE112/org-netbeans-spi-palette-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-awt/RELEASE112/org-openide-awt-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-dialogs/RELEASE112/org-openide-dialogs-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-explorer/RELEASE112/org-openide-explorer-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-swing-tabcontrol/RELEASE112/org-netbeans-swing-tabcontrol-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-filesystems/RELEASE112/org-openide-filesystems-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-loaders/RELEASE112/org-openide-loaders-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-api-scripting/RELEASE112/org-netbeans-api-scripting-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-api-templates/RELEASE112/org-netbeans-api-templates-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-modules/RELEASE112/org-openide-modules-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-nodes/RELEASE112/org-openide-nodes-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-text/RELEASE112/org-openide-text-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-util/RELEASE112/org-openide-util-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-util-lookup/RELEASE112/org-openide-util-lookup-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-windows/RELEASE112/org-openide-windows-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor/RELEASE112/org-netbeans-modules-editor-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-api-progress/RELEASE112/org-netbeans-api-progress-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-api-progress-nb/RELEASE112/org-netbeans-api-progress-nb-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-document/RELEASE112/org-netbeans-modules-editor-document-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-guards/RELEASE112/org-netbeans-modules-editor-guards-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-indent/RELEASE112/org-netbeans-modules-editor-indent-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-lib2/RELEASE112/org-netbeans-modules-editor-lib2-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-lexer/RELEASE112/org-netbeans-modules-lexer-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-actions/RELEASE112/org-openide-actions-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-filesystems-nb/RELEASE112/org-openide-filesystems-nb-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-util/RELEASE112/org-netbeans-modules-editor-util-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-fold/RELEASE112/org-netbeans-modules-editor-fold-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-settings-lib/RELEASE112/org-netbeans-modules-editor-settings-lib-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-util-ui/RELEASE112/org-openide-util-ui-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-lib/RELEASE112/org-netbeans-modules-editor-lib-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-mimelookup/RELEASE112/org-netbeans-modules-editor-mimelookup-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-settings/RELEASE112/org-netbeans-modules-editor-settings-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/modules/org-netbeans-modules-editor-settings-storage/RELEASE112/org-netbeans-modules-editor-settings-storage-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/modules/org-netbeans-modules-options-keymap/RELEASE112/org-netbeans-modules-options-keymap-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-options-api/RELEASE112/org-netbeans-modules-options-api-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-spi-quicksearch/RELEASE112/org-netbeans-spi-quicksearch-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-swing-outline/RELEASE112/org-netbeans-swing-outline-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-spi-editor-hints-projects/RELEASE112/org-netbeans-spi-editor-hints-projects-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-tools-storage/RELEASE112/org-netbeans-modules-editor-tools-storage-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-projectapi/RELEASE112/org-netbeans-modules-projectapi-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-projectuiapi/RELEASE112/org-netbeans-modules-projectuiapi-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-spi-editor-hints/RELEASE112/org-netbeans-spi-editor-hints-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-spi-navigator/RELEASE112/org-netbeans-spi-navigator-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-parsing-indexing/RELEASE112/org-netbeans-modules-parsing-indexing-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-api-java-classpath/RELEASE112/org-netbeans-api-java-classpath-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-libs-lucene/RELEASE112/org-netbeans-libs-lucene-RELEASE112.jar, /Users/janke/.m2/repository/org/apache/lucene/lucene-core/3.5.0/lucene-core-3.5.0.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-parsing-api/RELEASE112/org-netbeans-modules-parsing-api-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-projectuiapi-base/RELEASE112/org-netbeans-modules-projectuiapi-base-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-queries/RELEASE112/org-netbeans-modules-queries-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-spi-tasklist/RELEASE112/org-netbeans-spi-tasklist-RELEASE112.jar] [DEBUG] (f) compileSourceRoots = [/Users/janke/local/repos/antlrworks-jank/tvl-editor-actions/src/main/java] [DEBUG] (f) compilerId = javac [DEBUG] (f) debug = true [DEBUG] (f) encoding = UTF-8 [DEBUG] (f) failOnError = true [DEBUG] (f) failOnWarning = false [DEBUG] (f) forceJavacCompilerUse = false [DEBUG] (f) fork = false [DEBUG] (f) generatedSourcesDirectory = /Users/janke/local/repos/antlrworks-jank/tvl-editor-actions/target/generated-sources/annotations [DEBUG] (f) mojoExecution = org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile {execution: default-compile} [DEBUG] (f) optimize = false [DEBUG] (f) outputDirectory = /Users/janke/local/repos/antlrworks-jank/tvl-editor-actions/target/classes [DEBUG] (f) parameters = false [DEBUG] (f) project = MavenProject: net.apjanke.antlrworks-jank:tvl-editor-actions:2.6.0-SNAPSHOT @ /Users/janke/local/repos/antlrworks-jank/tvl-editor-actions/pom.xml [DEBUG] (f) projectArtifact = net.apjanke.antlrworks-jank:tvl-editor-actions:jar:2.6.0-SNAPSHOT [DEBUG] (f) session = org.apache.maven.execution.MavenSession at 58472096 [DEBUG] (f) showDeprecation = false [DEBUG] (f) showWarnings = false [DEBUG] (f) skipMultiThreadWarning = false [DEBUG] (f) source = 1.8 [DEBUG] (f) staleMillis = 0 [DEBUG] (s) target = 1.8 [DEBUG] (f) useIncrementalCompilation = true [DEBUG] (f) verbose = false [DEBUG] -- end configuration -- [DEBUG] Using compiler 'javac'. [DEBUG] Adding /Users/janke/local/repos/antlrworks-jank/tvl-editor-actions/target/generated-sources/annotations to compile source roots: /Users/janke/local/repos/antlrworks-jank/tvl-editor-actions/src/main/java [DEBUG] New compile source roots: /Users/janke/local/repos/antlrworks-jank/tvl-editor-actions/src/main/java /Users/janke/local/repos/antlrworks-jank/tvl-editor-actions/target/generated-sources/annotations [DEBUG] CompilerReuseStrategy: reuseCreated [DEBUG] useIncrementalCompilation enabled [INFO] Nothing to compile - all classes are up to date [INFO] [INFO] ----------< net.apjanke.antlrworks-jank:works-editor-antlr4 >----------- [INFO] Building works-editor-antlr4 2.6.0-SNAPSHOT [6/9] [INFO] --------------------------------[ jar ]--------------------------------- [DEBUG] Lifecycle default -> [validate, initialize, generate-sources, process-sources, generate-resources, process-resources, compile, process-classes, generate-test-sources, process-test-sources, generate-test-resources, process-test-resources, test-compile, process-test-classes, test, prepare-package, package, pre-integration-test, integration-test, post-integration-test, verify, install, deploy] [DEBUG] Lifecycle clean -> [pre-clean, clean, post-clean] [DEBUG] Lifecycle site -> [pre-site, site, post-site, site-deploy] [DEBUG] Lifecycle default -> [validate, initialize, generate-sources, process-sources, generate-resources, process-resources, compile, process-classes, generate-test-sources, process-test-sources, generate-test-resources, process-test-resources, test-compile, process-test-classes, test, prepare-package, package, pre-integration-test, integration-test, post-integration-test, verify, install, deploy] [DEBUG] Lifecycle clean -> [pre-clean, clean, post-clean] [DEBUG] Lifecycle site -> [pre-site, site, post-site, site-deploy] [DEBUG] Lifecycle default -> [validate, initialize, generate-sources, process-sources, generate-resources, process-resources, compile, process-classes, generate-test-sources, process-test-sources, generate-test-resources, process-test-resources, test-compile, process-test-classes, test, prepare-package, package, pre-integration-test, integration-test, post-integration-test, verify, install, deploy] [DEBUG] Lifecycle clean -> [pre-clean, clean, post-clean] [DEBUG] Lifecycle site -> [pre-site, site, post-site, site-deploy] [DEBUG] === PROJECT BUILD PLAN ================================================ [DEBUG] Project: net.apjanke.antlrworks-jank:works-editor-antlr4:2.6.0-SNAPSHOT [DEBUG] Dependencies (collect): [] [DEBUG] Dependencies (resolve): [compile] [DEBUG] Repositories (dependencies): [netbeans (http://bits.netbeans.org/nexus/content/groups/netbeans/, default, releases+snapshots), atricore (http://repository.atricore.org/m2-release-repository/, default, releases+snapshots), central (https://repo.maven.apache.org/maven2, default, releases)] [DEBUG] Repositories (plugins) : [central (https://repo.maven.apache.org/maven2, default, releases)] [DEBUG] ----------------------------------------------------------------------- [DEBUG] Goal: org.apache.maven.plugins:maven-resources-plugin:2.6:resources (default-resources) [DEBUG] Style: Regular [DEBUG] Configuration: ${encoding} ${maven.resources.escapeString} ${maven.resources.escapeWindowsPaths} ${maven.resources.includeEmptyDirs} ${maven.resources.overwrite} ${maven.resources.supportMultiLineFiltering} [DEBUG] ----------------------------------------------------------------------- [DEBUG] Goal: org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile (default-compile) [DEBUG] Style: Regular [DEBUG] Configuration: ${maven.compiler.compilerId} ${maven.compiler.compilerReuseStrategy} ${maven.compiler.compilerVersion} ${maven.compiler.debug} ${maven.compiler.debuglevel} ${encoding} ${maven.compiler.executable} ${maven.compiler.failOnError} ${maven.compiler.failOnWarning} ${maven.compiler.forceJavacCompilerUse} ${maven.compiler.fork} ${maven.compiler.maxmem} ${maven.compiler.meminitial} ${maven.compiler.optimize} ${maven.compiler.parameters} ${maven.compiler.release} ${maven.compiler.showDeprecation} ${maven.compiler.showWarnings} ${maven.main.skip} ${maven.compiler.skipMultiThreadWarning} 1.8 ${lastModGranularityMs} 1.8 ${maven.compiler.useIncrementalCompilation} ${maven.compiler.verbose} [DEBUG] ======================================================================= [DEBUG] Dependency collection stats: {ConflictMarker.analyzeTime=289990, ConflictMarker.markTime=177073, ConflictMarker.nodeCount=597, ConflictIdSorter.graphTime=451034, ConflictIdSorter.topsortTime=187214, ConflictIdSorter.conflictIdCount=83, ConflictIdSorter.conflictIdCycleCount=1, ConflictResolver.totalTime=1731386, ConflictResolver.conflictItemCount=595, DefaultDependencyCollector.collectTime=3240982, DefaultDependencyCollector.transformTime=2889743} [DEBUG] net.apjanke.antlrworks-jank:works-editor-antlr4:jar:2.6.0-SNAPSHOT [DEBUG] net.apjanke.antlrworks-jank:editor-completionext:jar:2.6.0-SNAPSHOT:compile [DEBUG] javax.annotation:javax.annotation-api:jar:1.3.2:compile [DEBUG] org.netbeans.api:org-netbeans-api-annotations-common:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-spi-palette:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-awt:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-dialogs:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-explorer:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-swing-tabcontrol:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-filesystems:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-loaders:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-api-scripting:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-api-templates:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-modules:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-nodes:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-text:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-util:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-util-lookup:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-windows:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-editor-util:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-editor:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-api-progress:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-api-progress-nb:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-editor-document:jar:RELEASE112:compile [DEBUG] org.netbeans.modules:org-netbeans-modules-editor-fold-nbui:jar:RELEASE112:runtime [DEBUG] org.netbeans.api:org-netbeans-modules-editor-guards:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-editor-indent:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-editor-lib2:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-lexer:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-actions:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-filesystems-nb:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-editor-fold:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-editor-settings-lib:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-util-ui:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-editor-lib:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-editor-mimelookup:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-editor-settings:jar:RELEASE112:compile [DEBUG] org.netbeans.modules:org-netbeans-modules-editor-settings-storage:jar:RELEASE112:compile [DEBUG] org.netbeans.modules:org-netbeans-modules-options-keymap:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-options-api:jar:RELEASE112:compile [DEBUG] org.netbeans.modules:org-netbeans-core:jar:RELEASE112:runtime [DEBUG] org.netbeans.modules:org-netbeans-bootstrap:jar:RELEASE112:runtime [DEBUG] org.netbeans.api:org-netbeans-modules-keyring:jar:RELEASE112:runtime [DEBUG] org.netbeans.api:org-netbeans-swing-plaf:jar:RELEASE112:runtime [DEBUG] org.netbeans.api:org-openide-io:jar:RELEASE112:runtime [DEBUG] org.netbeans.api:org-netbeans-api-intent:jar:RELEASE112:runtime [DEBUG] org.netbeans.api:org-netbeans-api-io:jar:RELEASE112:runtime [DEBUG] org.netbeans.modules:org-netbeans-core-startup:jar:RELEASE112:runtime [DEBUG] org.netbeans.api:org-netbeans-libs-asm:jar:RELEASE112:runtime [DEBUG] org.ow2.asm:asm-all:jar:5.0.1:runtime [DEBUG] org.netbeans.modules:org-netbeans-core-startup-base:jar:RELEASE112:runtime [DEBUG] org.netbeans.api:org-netbeans-spi-quicksearch:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-swing-outline:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-spi-editor-hints-projects:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-editor-tools-storage:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-projectapi:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-projectuiapi:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-spi-editor-hints:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-spi-navigator:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-parsing-indexing:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-api-java-classpath:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-libs-lucene:jar:RELEASE112:compile [DEBUG] org.apache.lucene:lucene-core:jar:3.5.0:compile [DEBUG] org.netbeans.api:org-netbeans-modules-parsing-api:jar:RELEASE112:compile [DEBUG] org.netbeans.modules:org-netbeans-modules-parsing-lucene:jar:RELEASE112:runtime [DEBUG] org.netbeans.modules:org-netbeans-modules-masterfs:jar:RELEASE112:runtime [DEBUG] org.netbeans.modules:org-netbeans-modules-project-indexingbridge:jar:RELEASE112:runtime [DEBUG] org.netbeans.api:org-netbeans-modules-projectuiapi-base:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-queries:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-spi-tasklist:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-sampler:jar:RELEASE112:compile [DEBUG] net.apjanke.antlrworks-jank:tvl-editor-actions:jar:2.6.0-SNAPSHOT:compile [DEBUG] net.apjanke.antlrworks-jank:antlr-works-netbeans:jar:2.6.0-SNAPSHOT:compile [DEBUG] org.netbeans.modules:org-netbeans-modules-options-editor:jar:RELEASE112:compile [DEBUG] org.antlr:antlr4-runtime:jar:4.8-1:compile [DEBUG] org.antlr:stringtemplate:jar:4.0.2:compile [DEBUG] org.antlr:antlr-runtime:jar:3.3:compile [DEBUG] org.antlr:antlr4:jar:4.8-1:compile [DEBUG] org.antlr:ST4:jar:4.3:compile [DEBUG] org.abego.treelayout:org.abego.treelayout.core:jar:1.0.3:compile [DEBUG] org.glassfish:javax.json:jar:1.0.4:compile [DEBUG] com.ibm.icu:icu4j:jar:61.1:compile [DEBUG] junit:junit:jar:4.13:test [DEBUG] org.hamcrest:hamcrest-core:jar:1.3:test [INFO] [INFO] --- maven-resources-plugin:2.6:resources (default-resources) @ works-editor-antlr4 --- [DEBUG] Configuring mojo org.apache.maven.plugins:maven-resources-plugin:2.6:resources from plugin realm ClassRealm[plugin>org.apache.maven.plugins:maven-resources-plugin:2.6, parent: jdk.internal.loader.ClassLoaders$AppClassLoader at 55054057] [DEBUG] Configuring mojo 'org.apache.maven.plugins:maven-resources-plugin:2.6:resources' with basic configurator --> [DEBUG] (f) buildFilters = [] [DEBUG] (f) encoding = UTF-8 [DEBUG] (f) escapeWindowsPaths = true [DEBUG] (s) includeEmptyDirs = false [DEBUG] (s) outputDirectory = /Users/janke/local/repos/antlrworks-jank/works-editor-antlr4/target/classes [DEBUG] (s) overwrite = false [DEBUG] (f) project = MavenProject: net.apjanke.antlrworks-jank:works-editor-antlr4:2.6.0-SNAPSHOT @ /Users/janke/local/repos/antlrworks-jank/works-editor-antlr4/pom.xml [DEBUG] (s) resources = [Resource {targetPath: null, filtering: false, FileSet {directory: /Users/janke/local/repos/antlrworks-jank/works-editor-antlr4/src/main/resources, PatternSet [includes: {}, excludes: {}]}}] [DEBUG] (f) session = org.apache.maven.execution.MavenSession at 58472096 [DEBUG] (f) supportMultiLineFiltering = false [DEBUG] (f) useBuildFilters = true [DEBUG] (s) useDefaultDelimiters = true [DEBUG] -- end configuration -- [DEBUG] properties used {env.TERM=xterm-256color, java.specification.version=13, sun.arch.data.model=64, env.CLICOLOR=1, java.vendor.url=https://openjdk.java.net/, env.COLORFGBG=12;8, env.GOPATH=/Users/janke/local/go-work, sun.boot.library.path=/usr/local/Cellar/openjdk/13.0.2+8_2/libexec/openjdk.jdk/Contents/Home/lib, sun.java.command=org.codehaus.plexus.classworlds.launcher.Launcher -X -e compile, jdk.debug=release, maven.version=3.6.3, java.specification.vendor=Oracle Corporation, java.version.date=2020-01-14, version=2.6.0-SNAPSHOT, java.home=/usr/local/Cellar/openjdk/13.0.2+8_2/libexec/openjdk.jdk/Contents/Home, env.GUIEDITOR=subl, java.vm.specification.vendor=Oracle Corporation, java.specification.name=Java Platform API Specification, sun.management.compiler=HotSpot 64-Bit Tiered Compilers, env.LC_TERMINAL_VERSION=3.3.9, java.runtime.version=13.0.2+8, env.LSCOLORS=gxxxdxdxdxexexdxdxgxgx, env.PATH=/usr/local/sbin:/usr/local/lib/ruby/gems/2.7.0/bin:/usr/local/lib/ruby/gems/2.6.0/bin:/usr/local/opt/ruby/bin:/Users/janke/bin:/usr/local/bin:/usr/local/sbin:/usr/local/lib/ruby/gems/2.7.0/bin:/usr/local/lib/ruby/gems/2.6.0/bin:/usr/local/opt/ruby/bin:/Users/janke/bin:/usr/local/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Applications/VMware Fusion.app/Contents/Public:/Library/TeX/texbin:/usr/local/MacGPG2/bin:/usr/local/share/dotnet:/opt/X11/bin:~/.dotnet/tools:/Library/Frameworks/Mono.framework/Versions/Current/Commands:/Users/janke/local/go-work/bin:/Users/janke/.rvm/bin:/Users/janke/local/go-work/bin:/Users/janke/.rvm/bin, env.LS_COLORS=di=36:so=33:pi=33:ex=33:bd=34:cd=34:su=33:sg=33:tw=36:ow=36:ln=00;04, file.encoding=UTF-8, env.HOMEBREW_EDITOR=subl, env.HISTCONTROL=ignoredups, env.SHLVL=2, java.io.tmpdir=/var/folders/_4/9mx5ryp52bb_z6drbcbrhwl40000gn/T/, java.version=13.0.2, java.vm.specification.name=Java Virtual Machine Specification, netbeans.version=RELEASE112, java.library.path=/Users/janke/Library/Java/Extensions:/Library/Java/Extensions:/Network/Library/Java/Extensions:/System/Library/Java/Extensions:/usr/lib/java:., java.vendor=N/A, env.JAVA_MAIN_CLASS_11911=org.codehaus.plexus.classworlds.launcher.Launcher, classworlds.conf=/usr/local/Cellar/maven/3.6.3_1/libexec/bin/m2.conf, sun.io.unicode.encoding=UnicodeBig, env.LANG=en_US.UTF-8, env.HOMEBREW_SANDBOX=1, java.vm.specification.version=13, os.name=Mac OS X, env.DISPLAY=/private/tmp/com.apple.launchd.O2942FNRqP/org.macosforge.xquartz:0, release.username=apjanke, http.nonProxyHosts=local|*.local|169.254/16|*.169.254/16, maven.compiler.source=1.8, user.home=/Users/janke, env.XML_CATALOG_FILES=/usr/local/etc/xml/catalog, env.EDITOR=vi, brandingToken=antlrworks2jank, env.COLORTERM=truecolor, env.Apple_PubSub_Socket_Render=/private/tmp/com.apple.launchd.YiSqoN3EU9/Render, env.ITERM_SESSION_ID=w0t0p0:71DF3FA8-5482-4070-8BD4-354B2D5AA3BB, env.ITERM_PROFILE=Solarized - Dark - apj, path.separator=:, os.version=10.14.6, java.vm.name=OpenJDK 64-Bit Server VM, env.SHELL=/bin/zsh, gpg.executable=gpg2, env.HISTSIZE=32768, os.arch=x86_64, env.HISTFILESIZE=32768, maven.multiModuleProjectDirectory=/Users/janke/local/repos/antlrworks-jank, env.MAVEN_PROJECTBASEDIR=/Users/janke/local/repos/antlrworks-jank, java.vm.info=mixed mode, sharing, env.USER=janke, java.class.version=57.0, env.HOMEBREW_NO_AUTO_UPDATE=1, sun.jnu.encoding=UTF-8, env.HISTIGNORE=ls:ls *:cd:cd -:pwd:exit:date:* --help, env.VISUAL=subl -w, maven.build.version=Apache Maven 3.6.3 (cecedd343002696d0abb50b32b541b8a6ba2883f), maven.home=/usr/local/Cellar/maven/3.6.3_1/libexec, env.JAVA_HOME=/usr/local/opt/openjdk, env.LC_TERMINAL=iTerm2, file.separator=/, env.LESS=-R, java.vm.compressedOopsMode=Non-zero disjoint base, line.separator= , env.TERM_PROGRAM_VERSION=3.3.9, user.name=janke, env.XPC_FLAGS=0x0, env.LOGNAME=janke, env.__CF_USER_TEXT_ENCODING=0x1F5:0x0:0x0, env.TERM_SESSION_ID=w0t0p0:71DF3FA8-5482-4070-8BD4-354B2D5AA3BB, env.SSH_AUTH_SOCK=/private/tmp/com.apple.launchd.9RGvwmJ5GD/Listeners, env.TERMINFO_DIRS=/Users/janke/.terminfo:/usr/local/share/terminfo:, maven.compiler.target=1.8, env.TMPDIR=/var/folders/_4/9mx5ryp52bb_z6drbcbrhwl40000gn/T/, library.jansi.path=/usr/local/Cellar/maven/3.6.3_1/libexec/lib/jansi-native, env.TERM_PROGRAM=iTerm.app, socksNonProxyHosts=local|*.local|169.254/16|*.169.254/16, env.OLDPWD=/Users/janke/local/repos/antlrworks-jank, env.PWD=/Users/janke/local/repos/antlrworks-jank, env.PAGER=less, java.class.path=/usr/local/Cellar/maven/3.6.3_1/libexec/boot/plexus-classworlds-2.6.0.jar, env.HOME=/Users/janke, java.vm.vendor=Oracle Corporation, gpg.keyname=24AF1EA5, maven.conf=/usr/local/Cellar/maven/3.6.3_1/libexec/conf, env.HOMEBREW_DEVELOPER=1, sun.java.launcher=SUN_STANDARD, user.country=US, sun.cpu.endian=little, user.language=en, env.XPC_SERVICE_NAME=0, ftp.nonProxyHosts=local|*.local|169.254/16|*.169.254/16, java.runtime.name=OpenJDK Runtime Environment, project.build.sourceEncoding=UTF-8, env.MAVEN_CMD_LINE_ARGS= -X -e compile, java.vendor.url.bug=https://bugreport.java.com/bugreport/, user.dir=/Users/janke/local/repos/antlrworks-jank, antlr.version=4.8-1, java.vm.version=13.0.2+8} [INFO] Using 'UTF-8' encoding to copy filtered resources. [DEBUG] resource with targetPath null directory /Users/janke/local/repos/antlrworks-jank/works-editor-antlr4/src/main/resources excludes [] includes [] [INFO] skip non existing resourceDirectory /Users/janke/local/repos/antlrworks-jank/works-editor-antlr4/src/main/resources [DEBUG] no use filter components [INFO] [INFO] --- maven-compiler-plugin:3.8.1:compile (default-compile) @ works-editor-antlr4 --- [DEBUG] Configuring mojo org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile from plugin realm ClassRealm[plugin>org.apache.maven.plugins:maven-compiler-plugin:3.8.1, parent: jdk.internal.loader.ClassLoaders$AppClassLoader at 55054057] [DEBUG] Configuring mojo 'org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile' with basic configurator --> [DEBUG] (f) basedir = /Users/janke/local/repos/antlrworks-jank/works-editor-antlr4 [DEBUG] (f) buildDirectory = /Users/janke/local/repos/antlrworks-jank/works-editor-antlr4/target [DEBUG] (f) compilePath = [/Users/janke/local/repos/antlrworks-jank/works-editor-antlr4/target/classes, /Users/janke/local/repos/antlrworks-jank/editor-completionext/target/classes, /Users/janke/.m2/repository/javax/annotation/javax.annotation-api/1.3.2/javax.annotation-api-1.3.2.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-api-annotations-common/RELEASE112/org-netbeans-api-annotations-common-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-spi-palette/RELEASE112/org-netbeans-spi-palette-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-awt/RELEASE112/org-openide-awt-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-dialogs/RELEASE112/org-openide-dialogs-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-explorer/RELEASE112/org-openide-explorer-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-swing-tabcontrol/RELEASE112/org-netbeans-swing-tabcontrol-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-filesystems/RELEASE112/org-openide-filesystems-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-loaders/RELEASE112/org-openide-loaders-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-api-scripting/RELEASE112/org-netbeans-api-scripting-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-api-templates/RELEASE112/org-netbeans-api-templates-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-modules/RELEASE112/org-openide-modules-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-nodes/RELEASE112/org-openide-nodes-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-text/RELEASE112/org-openide-text-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-util/RELEASE112/org-openide-util-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-util-lookup/RELEASE112/org-openide-util-lookup-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-windows/RELEASE112/org-openide-windows-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-util/RELEASE112/org-netbeans-modules-editor-util-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor/RELEASE112/org-netbeans-modules-editor-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-api-progress/RELEASE112/org-netbeans-api-progress-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-api-progress-nb/RELEASE112/org-netbeans-api-progress-nb-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-document/RELEASE112/org-netbeans-modules-editor-document-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-guards/RELEASE112/org-netbeans-modules-editor-guards-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-indent/RELEASE112/org-netbeans-modules-editor-indent-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-lib2/RELEASE112/org-netbeans-modules-editor-lib2-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-lexer/RELEASE112/org-netbeans-modules-lexer-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-actions/RELEASE112/org-openide-actions-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-filesystems-nb/RELEASE112/org-openide-filesystems-nb-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-fold/RELEASE112/org-netbeans-modules-editor-fold-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-settings-lib/RELEASE112/org-netbeans-modules-editor-settings-lib-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-util-ui/RELEASE112/org-openide-util-ui-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-lib/RELEASE112/org-netbeans-modules-editor-lib-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-mimelookup/RELEASE112/org-netbeans-modules-editor-mimelookup-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-settings/RELEASE112/org-netbeans-modules-editor-settings-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/modules/org-netbeans-modules-editor-settings-storage/RELEASE112/org-netbeans-modules-editor-settings-storage-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/modules/org-netbeans-modules-options-keymap/RELEASE112/org-netbeans-modules-options-keymap-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-options-api/RELEASE112/org-netbeans-modules-options-api-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-spi-quicksearch/RELEASE112/org-netbeans-spi-quicksearch-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-swing-outline/RELEASE112/org-netbeans-swing-outline-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-spi-editor-hints-projects/RELEASE112/org-netbeans-spi-editor-hints-projects-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-tools-storage/RELEASE112/org-netbeans-modules-editor-tools-storage-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-projectapi/RELEASE112/org-netbeans-modules-projectapi-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-projectuiapi/RELEASE112/org-netbeans-modules-projectuiapi-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-spi-editor-hints/RELEASE112/org-netbeans-spi-editor-hints-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-spi-navigator/RELEASE112/org-netbeans-spi-navigator-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-parsing-indexing/RELEASE112/org-netbeans-modules-parsing-indexing-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-api-java-classpath/RELEASE112/org-netbeans-api-java-classpath-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-libs-lucene/RELEASE112/org-netbeans-libs-lucene-RELEASE112.jar, /Users/janke/.m2/repository/org/apache/lucene/lucene-core/3.5.0/lucene-core-3.5.0.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-parsing-api/RELEASE112/org-netbeans-modules-parsing-api-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-projectuiapi-base/RELEASE112/org-netbeans-modules-projectuiapi-base-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-queries/RELEASE112/org-netbeans-modules-queries-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-spi-tasklist/RELEASE112/org-netbeans-spi-tasklist-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-sampler/RELEASE112/org-netbeans-modules-sampler-RELEASE112.jar, /Users/janke/local/repos/antlrworks-jank/tvl-editor-actions/target/classes, /Users/janke/local/repos/antlrworks-jank/antlr-works-netbeans/target/classes, /Users/janke/.m2/repository/org/netbeans/modules/org-netbeans-modules-options-editor/RELEASE112/org-netbeans-modules-options-editor-RELEASE112.jar, /Users/janke/.m2/repository/org/antlr/antlr4-runtime/4.8-1/antlr4-runtime-4.8-1.jar, /Users/janke/.m2/repository/org/antlr/stringtemplate/4.0.2/stringtemplate-4.0.2.jar, /Users/janke/.m2/repository/org/antlr/antlr-runtime/3.3/antlr-runtime-3.3.jar, /Users/janke/.m2/repository/org/antlr/antlr4/4.8-1/antlr4-4.8-1.jar, /Users/janke/.m2/repository/org/antlr/ST4/4.3/ST4-4.3.jar, /Users/janke/.m2/repository/org/abego/treelayout/org.abego.treelayout.core/1.0.3/org.abego.treelayout.core-1.0.3.jar, /Users/janke/.m2/repository/org/glassfish/javax.json/1.0.4/javax.json-1.0.4.jar, /Users/janke/.m2/repository/com/ibm/icu/icu4j/61.1/icu4j-61.1.jar] [DEBUG] (f) compileSourceRoots = [/Users/janke/local/repos/antlrworks-jank/works-editor-antlr4/src/main/java] [DEBUG] (f) compilerId = javac [DEBUG] (f) debug = true [DEBUG] (f) encoding = UTF-8 [DEBUG] (f) failOnError = true [DEBUG] (f) failOnWarning = false [DEBUG] (f) forceJavacCompilerUse = false [DEBUG] (f) fork = false [DEBUG] (f) generatedSourcesDirectory = /Users/janke/local/repos/antlrworks-jank/works-editor-antlr4/target/generated-sources/annotations [DEBUG] (f) mojoExecution = org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile {execution: default-compile} [DEBUG] (f) optimize = false [DEBUG] (f) outputDirectory = /Users/janke/local/repos/antlrworks-jank/works-editor-antlr4/target/classes [DEBUG] (f) parameters = false [DEBUG] (f) project = MavenProject: net.apjanke.antlrworks-jank:works-editor-antlr4:2.6.0-SNAPSHOT @ /Users/janke/local/repos/antlrworks-jank/works-editor-antlr4/pom.xml [DEBUG] (f) projectArtifact = net.apjanke.antlrworks-jank:works-editor-antlr4:jar:2.6.0-SNAPSHOT [DEBUG] (f) session = org.apache.maven.execution.MavenSession at 58472096 [DEBUG] (f) showDeprecation = false [DEBUG] (f) showWarnings = false [DEBUG] (f) skipMultiThreadWarning = false [DEBUG] (f) source = 1.8 [DEBUG] (f) staleMillis = 0 [DEBUG] (s) target = 1.8 [DEBUG] (f) useIncrementalCompilation = true [DEBUG] (f) verbose = false [DEBUG] -- end configuration -- [DEBUG] Using compiler 'javac'. [DEBUG] Adding /Users/janke/local/repos/antlrworks-jank/works-editor-antlr4/target/generated-sources/annotations to compile source roots: /Users/janke/local/repos/antlrworks-jank/works-editor-antlr4/src/main/java [DEBUG] New compile source roots: /Users/janke/local/repos/antlrworks-jank/works-editor-antlr4/src/main/java /Users/janke/local/repos/antlrworks-jank/works-editor-antlr4/target/generated-sources/annotations [DEBUG] CompilerReuseStrategy: reuseCreated [DEBUG] useIncrementalCompilation enabled [DEBUG] Stale source detected: /Users/janke/local/repos/antlrworks-jank/works-editor-antlr4/src/main/java/org/antlr/works/editor/antlr4/completion/CompletionToolTip.java [DEBUG] Stale source detected: /Users/janke/local/repos/antlrworks-jank/works-editor-antlr4/src/main/java/org/antlr/works/editor/antlr4/completion/AbstractParserCache.java [DEBUG] Stale source detected: /Users/janke/local/repos/antlrworks-jank/works-editor-antlr4/src/main/java/org/antlr/works/editor/antlr4/completion/AbstractForestParser.java [DEBUG] Stale source detected: /Users/janke/local/repos/antlrworks-jank/works-editor-antlr4/src/main/java/org/antlr/works/editor/antlr4/completion/CodeCompletionErrorStrategy.java [DEBUG] Stale source detected: /Users/janke/local/repos/antlrworks-jank/works-editor-antlr4/src/main/java/org/antlr/works/editor/antlr4/completion/CaretReachedException.java [DEBUG] Stale source detected: /Users/janke/local/repos/antlrworks-jank/works-editor-antlr4/src/main/java/org/antlr/works/editor/antlr4/completion/ForestParser.java [DEBUG] Stale source detected: /Users/janke/local/repos/antlrworks-jank/works-editor-antlr4/src/main/java/org/antlr/works/editor/antlr4/completion/CodeCompletionParser.java [DEBUG] Stale source detected: /Users/janke/local/repos/antlrworks-jank/works-editor-antlr4/src/main/java/org/antlr/works/editor/antlr4/parsing/DescriptiveErrorListener.java [DEBUG] Stale source detected: /Users/janke/local/repos/antlrworks-jank/works-editor-antlr4/src/main/java/org/antlr/works/editor/antlr4/highlighting/TokenSourceWithStateV4.java [DEBUG] Stale source detected: /Users/janke/local/repos/antlrworks-jank/works-editor-antlr4/src/main/java/org/antlr/works/editor/antlr4/completion/MultipleDecisionData.java [DEBUG] Stale source detected: /Users/janke/local/repos/antlrworks-jank/works-editor-antlr4/src/main/java/org/antlr/works/editor/antlr4/completion/CompletionMatchResult.java [DEBUG] Stale source detected: /Users/janke/local/repos/antlrworks-jank/works-editor-antlr4/src/main/java/org/antlr/works/editor/antlr4/parsing/ParseTrees.java [DEBUG] Stale source detected: /Users/janke/local/repos/antlrworks-jank/works-editor-antlr4/src/main/java/org/antlr/works/editor/antlr4/completion/CaretToken.java [DEBUG] Stale source detected: /Users/janke/local/repos/antlrworks-jank/works-editor-antlr4/src/main/java/org/antlr/works/editor/antlr4/formatting/AlignmentRequirement.java [INFO] Changes detected - recompiling the module! [DEBUG] Classpath: [DEBUG] /Users/janke/local/repos/antlrworks-jank/works-editor-antlr4/target/classes [DEBUG] /Users/janke/local/repos/antlrworks-jank/editor-completionext/target/classes [DEBUG] /Users/janke/.m2/repository/javax/annotation/javax.annotation-api/1.3.2/javax.annotation-api-1.3.2.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-api-annotations-common/RELEASE112/org-netbeans-api-annotations-common-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-spi-palette/RELEASE112/org-netbeans-spi-palette-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-openide-awt/RELEASE112/org-openide-awt-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-openide-dialogs/RELEASE112/org-openide-dialogs-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-openide-explorer/RELEASE112/org-openide-explorer-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-swing-tabcontrol/RELEASE112/org-netbeans-swing-tabcontrol-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-openide-filesystems/RELEASE112/org-openide-filesystems-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-openide-loaders/RELEASE112/org-openide-loaders-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-api-scripting/RELEASE112/org-netbeans-api-scripting-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-api-templates/RELEASE112/org-netbeans-api-templates-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-openide-modules/RELEASE112/org-openide-modules-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-openide-nodes/RELEASE112/org-openide-nodes-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-openide-text/RELEASE112/org-openide-text-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-openide-util/RELEASE112/org-openide-util-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-openide-util-lookup/RELEASE112/org-openide-util-lookup-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-openide-windows/RELEASE112/org-openide-windows-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-util/RELEASE112/org-netbeans-modules-editor-util-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor/RELEASE112/org-netbeans-modules-editor-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-api-progress/RELEASE112/org-netbeans-api-progress-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-api-progress-nb/RELEASE112/org-netbeans-api-progress-nb-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-document/RELEASE112/org-netbeans-modules-editor-document-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-guards/RELEASE112/org-netbeans-modules-editor-guards-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-indent/RELEASE112/org-netbeans-modules-editor-indent-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-lib2/RELEASE112/org-netbeans-modules-editor-lib2-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-lexer/RELEASE112/org-netbeans-modules-lexer-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-openide-actions/RELEASE112/org-openide-actions-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-openide-filesystems-nb/RELEASE112/org-openide-filesystems-nb-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-fold/RELEASE112/org-netbeans-modules-editor-fold-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-settings-lib/RELEASE112/org-netbeans-modules-editor-settings-lib-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-openide-util-ui/RELEASE112/org-openide-util-ui-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-lib/RELEASE112/org-netbeans-modules-editor-lib-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-mimelookup/RELEASE112/org-netbeans-modules-editor-mimelookup-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-settings/RELEASE112/org-netbeans-modules-editor-settings-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/modules/org-netbeans-modules-editor-settings-storage/RELEASE112/org-netbeans-modules-editor-settings-storage-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/modules/org-netbeans-modules-options-keymap/RELEASE112/org-netbeans-modules-options-keymap-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-options-api/RELEASE112/org-netbeans-modules-options-api-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-spi-quicksearch/RELEASE112/org-netbeans-spi-quicksearch-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-swing-outline/RELEASE112/org-netbeans-swing-outline-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-spi-editor-hints-projects/RELEASE112/org-netbeans-spi-editor-hints-projects-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-tools-storage/RELEASE112/org-netbeans-modules-editor-tools-storage-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-projectapi/RELEASE112/org-netbeans-modules-projectapi-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-projectuiapi/RELEASE112/org-netbeans-modules-projectuiapi-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-spi-editor-hints/RELEASE112/org-netbeans-spi-editor-hints-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-spi-navigator/RELEASE112/org-netbeans-spi-navigator-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-parsing-indexing/RELEASE112/org-netbeans-modules-parsing-indexing-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-api-java-classpath/RELEASE112/org-netbeans-api-java-classpath-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-libs-lucene/RELEASE112/org-netbeans-libs-lucene-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/apache/lucene/lucene-core/3.5.0/lucene-core-3.5.0.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-parsing-api/RELEASE112/org-netbeans-modules-parsing-api-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-projectuiapi-base/RELEASE112/org-netbeans-modules-projectuiapi-base-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-queries/RELEASE112/org-netbeans-modules-queries-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-spi-tasklist/RELEASE112/org-netbeans-spi-tasklist-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-sampler/RELEASE112/org-netbeans-modules-sampler-RELEASE112.jar [DEBUG] /Users/janke/local/repos/antlrworks-jank/tvl-editor-actions/target/classes [DEBUG] /Users/janke/local/repos/antlrworks-jank/antlr-works-netbeans/target/classes [DEBUG] /Users/janke/.m2/repository/org/netbeans/modules/org-netbeans-modules-options-editor/RELEASE112/org-netbeans-modules-options-editor-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/antlr/antlr4-runtime/4.8-1/antlr4-runtime-4.8-1.jar [DEBUG] /Users/janke/.m2/repository/org/antlr/stringtemplate/4.0.2/stringtemplate-4.0.2.jar [DEBUG] /Users/janke/.m2/repository/org/antlr/antlr-runtime/3.3/antlr-runtime-3.3.jar [DEBUG] /Users/janke/.m2/repository/org/antlr/antlr4/4.8-1/antlr4-4.8-1.jar [DEBUG] /Users/janke/.m2/repository/org/antlr/ST4/4.3/ST4-4.3.jar [DEBUG] /Users/janke/.m2/repository/org/abego/treelayout/org.abego.treelayout.core/1.0.3/org.abego.treelayout.core-1.0.3.jar [DEBUG] /Users/janke/.m2/repository/org/glassfish/javax.json/1.0.4/javax.json-1.0.4.jar [DEBUG] /Users/janke/.m2/repository/com/ibm/icu/icu4j/61.1/icu4j-61.1.jar [DEBUG] Source roots: [DEBUG] /Users/janke/local/repos/antlrworks-jank/works-editor-antlr4/src/main/java [DEBUG] /Users/janke/local/repos/antlrworks-jank/works-editor-antlr4/target/generated-sources/annotations [DEBUG] Command line options: [DEBUG] -d /Users/janke/local/repos/antlrworks-jank/works-editor-antlr4/target/classes -classpath /Users/janke/local/repos/antlrworks-jank/works-editor-antlr4/target/classes:/Users/janke/local/repos/antlrworks-jank/editor-completionext/target/classes:/Users/janke/.m2/repository/javax/annotation/javax.annotation-api/1.3.2/javax.annotation-api-1.3.2.jar:/Users/janke/.m2/repository/org/netbeans/api/org-netbeans-api-annotations-common/RELEASE112/org-netbeans-api-annotations-common-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-netbeans-spi-palette/RELEASE112/org-netbeans-spi-palette-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-openide-awt/RELEASE112/org-openide-awt-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-openide-dialogs/RELEASE112/org-openide-dialogs-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-openide-explorer/RELEASE112/org-openide-explorer-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-netbeans-swing-tabcontrol/RELEASE112/org-netbeans-swing-tabcontrol-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-openide-filesystems/RELEASE112/org-openide-filesystems-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-openide-loaders/RELEASE112/org-openide-loaders-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-netbeans-api-scripting/RELEASE112/org-netbeans-api-scripting-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-netbeans-api-templates/RELEASE112/org-netbeans-api-templates-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-openide-modules/RELEASE112/org-openide-modules-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-openide-nodes/RELEASE112/org-openide-nodes-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-openide-text/RELEASE112/org-openide-text-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-openide-util/RELEASE112/org-openide-util-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-openide-util-lookup/RELEASE112/org-openide-util-lookup-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-openide-windows/RELEASE112/org-openide-windows-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-util/RELEASE112/org-netbeans-modules-editor-util-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor/RELEASE112/org-netbeans-modules-editor-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-netbeans-api-progress/RELEASE112/org-netbeans-api-progress-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-netbeans-api-progress-nb/RELEASE112/org-netbeans-api-progress-nb-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-document/RELEASE112/org-netbeans-modules-editor-document-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-guards/RELEASE112/org-netbeans-modules-editor-guards-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-indent/RELEASE112/org-netbeans-modules-editor-indent-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-lib2/RELEASE112/org-netbeans-modules-editor-lib2-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-lexer/RELEASE112/org-netbeans-modules-lexer-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-openide-actions/RELEASE112/org-openide-actions-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-openide-filesystems-nb/RELEASE112/org-openide-filesystems-nb-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-fold/RELEASE112/org-netbeans-modules-editor-fold-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-settings-lib/RELEASE112/org-netbeans-modules-editor-settings-lib-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-openide-util-ui/RELEASE112/org-openide-util-ui-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-lib/RELEASE112/org-netbeans-modules-editor-lib-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-mimelookup/RELEASE112/org-netbeans-modules-editor-mimelookup-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-settings/RELEASE112/org-netbeans-modules-editor-settings-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/modules/org-netbeans-modules-editor-settings-storage/RELEASE112/org-netbeans-modules-editor-settings-storage-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/modules/org-netbeans-modules-options-keymap/RELEASE112/org-netbeans-modules-options-keymap-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-options-api/RELEASE112/org-netbeans-modules-options-api-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-netbeans-spi-quicksearch/RELEASE112/org-netbeans-spi-quicksearch-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-netbeans-swing-outline/RELEASE112/org-netbeans-swing-outline-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-netbeans-spi-editor-hints-projects/RELEASE112/org-netbeans-spi-editor-hints-projects-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-tools-storage/RELEASE112/org-netbeans-modules-editor-tools-storage-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-projectapi/RELEASE112/org-netbeans-modules-projectapi-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-projectuiapi/RELEASE112/org-netbeans-modules-projectuiapi-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-netbeans-spi-editor-hints/RELEASE112/org-netbeans-spi-editor-hints-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-netbeans-spi-navigator/RELEASE112/org-netbeans-spi-navigator-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-parsing-indexing/RELEASE112/org-netbeans-modules-parsing-indexing-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-netbeans-api-java-classpath/RELEASE112/org-netbeans-api-java-classpath-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-netbeans-libs-lucene/RELEASE112/org-netbeans-libs-lucene-RELEASE112.jar:/Users/janke/.m2/repository/org/apache/lucene/lucene-core/3.5.0/lucene-core-3.5.0.jar:/Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-parsing-api/RELEASE112/org-netbeans-modules-parsing-api-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-projectuiapi-base/RELEASE112/org-netbeans-modules-projectuiapi-base-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-queries/RELEASE112/org-netbeans-modules-queries-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-netbeans-spi-tasklist/RELEASE112/org-netbeans-spi-tasklist-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-sampler/RELEASE112/org-netbeans-modules-sampler-RELEASE112.jar:/Users/janke/local/repos/antlrworks-jank/tvl-editor-actions/target/classes:/Users/janke/local/repos/antlrworks-jank/antlr-works-netbeans/target/classes:/Users/janke/.m2/repository/org/netbeans/modules/org-netbeans-modules-options-editor/RELEASE112/org-netbeans-modules-options-editor-RELEASE112.jar:/Users/janke/.m2/repository/org/antlr/antlr4-runtime/4.8-1/antlr4-runtime-4.8-1.jar:/Users/janke/.m2/repository/org/antlr/stringtemplate/4.0.2/stringtemplate-4.0.2.jar:/Users/janke/.m2/repository/org/antlr/antlr-runtime/3.3/antlr-runtime-3.3.jar:/Users/janke/.m2/repository/org/antlr/antlr4/4.8-1/antlr4-4.8-1.jar:/Users/janke/.m2/repository/org/antlr/ST4/4.3/ST4-4.3.jar:/Users/janke/.m2/repository/org/abego/treelayout/org.abego.treelayout.core/1.0.3/org.abego.treelayout.core-1.0.3.jar:/Users/janke/.m2/repository/org/glassfish/javax.json/1.0.4/javax.json-1.0.4.jar:/Users/janke/.m2/repository/com/ibm/icu/icu4j/61.1/icu4j-61.1.jar: -sourcepath /Users/janke/local/repos/antlrworks-jank/works-editor-antlr4/src/main/java:/Users/janke/local/repos/antlrworks-jank/works-editor-antlr4/target/generated-sources/annotations: -s /Users/janke/local/repos/antlrworks-jank/works-editor-antlr4/target/generated-sources/annotations -g -nowarn -target 1.8 -source 1.8 -encoding UTF-8 [DEBUG] incrementalBuildHelper#beforeRebuildExecution [INFO] Compiling 39 source files to /Users/janke/local/repos/antlrworks-jank/works-editor-antlr4/target/classes [INFO] ------------------------------------------------------------------------ [INFO] Reactor Summary for ANTLRWorks2-Jank 2.6.0-SNAPSHOT: [INFO] [INFO] ANTLRWorks2-Jank ................................... SUCCESS [ 0.008 s] [INFO] editor-completionext ............................... SUCCESS [ 0.512 s] [INFO] editor-containingfolder ............................ SUCCESS [ 0.060 s] [INFO] antlr-works-netbeans ............................... SUCCESS [ 0.310 s] [INFO] tvl-editor-actions ................................. SUCCESS [ 0.117 s] [INFO] works-editor-antlr4 ................................ FAILURE [ 1.242 s] [INFO] antlr-works-editor ................................. SKIPPED [INFO] tvl-editor-whitespace .............................. SKIPPED [INFO] works-editor-antlr3 ................................ SKIPPED [INFO] ------------------------------------------------------------------------ [INFO] BUILD FAILURE [INFO] ------------------------------------------------------------------------ [INFO] Total time: 2.898 s [INFO] Finished at: 2020-05-08T12:59:38-04:00 [INFO] ------------------------------------------------------------------------ [ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile (default-compile) on project works-editor-antlr4: Fatal error compiling: CompilerException: NullPointerException -> [Help 1] org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile (default-compile) on project works-editor-antlr4: Fatal error compiling at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:215) at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:156) at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:148) at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:117) at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:81) at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build (SingleThreadedBuilder.java:56) at org.apache.maven.lifecycle.internal.LifecycleStarter.execute (LifecycleStarter.java:128) at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:305) at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:192) at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:105) at org.apache.maven.cli.MavenCli.execute (MavenCli.java:957) at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:289) at org.apache.maven.cli.MavenCli.main (MavenCli.java:193) at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native Method) at jdk.internal.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:62) at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke (Method.java:567) at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced (Launcher.java:282) at org.codehaus.plexus.classworlds.launcher.Launcher.launch (Launcher.java:225) at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode (Launcher.java:406) at org.codehaus.plexus.classworlds.launcher.Launcher.main (Launcher.java:347) Caused by: org.apache.maven.plugin.MojoExecutionException: Fatal error compiling at org.apache.maven.plugin.compiler.AbstractCompilerMojo.execute (AbstractCompilerMojo.java:1145) at org.apache.maven.plugin.compiler.CompilerMojo.execute (CompilerMojo.java:187) at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo (DefaultBuildPluginManager.java:137) at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:210) at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:156) at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:148) at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:117) at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:81) at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build (SingleThreadedBuilder.java:56) at org.apache.maven.lifecycle.internal.LifecycleStarter.execute (LifecycleStarter.java:128) at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:305) at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:192) at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:105) at org.apache.maven.cli.MavenCli.execute (MavenCli.java:957) at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:289) at org.apache.maven.cli.MavenCli.main (MavenCli.java:193) at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native Method) at jdk.internal.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:62) at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke (Method.java:567) at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced (Launcher.java:282) at org.codehaus.plexus.classworlds.launcher.Launcher.launch (Launcher.java:225) at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode (Launcher.java:406) at org.codehaus.plexus.classworlds.launcher.Launcher.main (Launcher.java:347) Caused by: org.codehaus.plexus.compiler.CompilerException at org.codehaus.plexus.compiler.javac.JavaxToolsCompiler.compileInProcess (JavaxToolsCompiler.java:173) at org.codehaus.plexus.compiler.javac.JavacCompiler.performCompile (JavacCompiler.java:174) at org.apache.maven.plugin.compiler.AbstractCompilerMojo.execute (AbstractCompilerMojo.java:1134) at org.apache.maven.plugin.compiler.CompilerMojo.execute (CompilerMojo.java:187) at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo (DefaultBuildPluginManager.java:137) at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:210) at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:156) at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:148) at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:117) at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:81) at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build (SingleThreadedBuilder.java:56) at org.apache.maven.lifecycle.internal.LifecycleStarter.execute (LifecycleStarter.java:128) at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:305) at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:192) at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:105) at org.apache.maven.cli.MavenCli.execute (MavenCli.java:957) at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:289) at org.apache.maven.cli.MavenCli.main (MavenCli.java:193) at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native Method) at jdk.internal.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:62) at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke (Method.java:567) at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced (Launcher.java:282) at org.codehaus.plexus.classworlds.launcher.Launcher.launch (Launcher.java:225) at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode (Launcher.java:406) at org.codehaus.plexus.classworlds.launcher.Launcher.main (Launcher.java:347) Caused by: java.lang.NullPointerException at com.sun.tools.javac.main.JavaCompiler.readSourceFile (JavaCompiler.java:840) at com.sun.tools.javac.processing.JavacProcessingEnvironment$ImplicitCompleter.complete (JavacProcessingEnvironment.java:1576) at com.sun.tools.javac.code.Symbol.complete (Symbol.java:657) at com.sun.tools.javac.code.Symbol$ClassSymbol.complete (Symbol.java:1356) at com.sun.tools.javac.code.Type$ClassType.complete (Type.java:1157) at com.sun.tools.javac.code.Type$ClassType.getTypeArguments (Type.java:1083) at com.sun.tools.javac.code.Printer.visitClassType (Printer.java:237) at com.sun.tools.javac.code.Printer.visitClassType (Printer.java:52) at com.sun.tools.javac.code.Type$ClassType.accept (Type.java:1010) at com.sun.tools.javac.code.Printer.visit (Printer.java:136) at com.sun.tools.javac.util.AbstractDiagnosticFormatter.formatArgument (AbstractDiagnosticFormatter.java:199) at com.sun.tools.javac.util.AbstractDiagnosticFormatter.formatArguments (AbstractDiagnosticFormatter.java:167) at com.sun.tools.javac.util.BasicDiagnosticFormatter.formatMessage (BasicDiagnosticFormatter.java:111) at com.sun.tools.javac.util.BasicDiagnosticFormatter.formatMessage (BasicDiagnosticFormatter.java:67) at com.sun.tools.javac.util.AbstractDiagnosticFormatter.formatArgument (AbstractDiagnosticFormatter.java:185) at com.sun.tools.javac.util.AbstractDiagnosticFormatter.formatArguments (AbstractDiagnosticFormatter.java:167) at com.sun.tools.javac.util.BasicDiagnosticFormatter.formatMessage (BasicDiagnosticFormatter.java:111) at com.sun.tools.javac.util.BasicDiagnosticFormatter.formatMessage (BasicDiagnosticFormatter.java:67) at com.sun.tools.javac.util.JCDiagnostic.getMessage (JCDiagnostic.java:788) at com.sun.tools.javac.api.ClientCodeWrapper$DiagnosticSourceUnwrapper.getMessage (ClientCodeWrapper.java:835) at org.codehaus.plexus.compiler.javac.JavaxToolsCompiler.compileInProcess (JavaxToolsCompiler.java:131) at org.codehaus.plexus.compiler.javac.JavacCompiler.performCompile (JavacCompiler.java:174) at org.apache.maven.plugin.compiler.AbstractCompilerMojo.execute (AbstractCompilerMojo.java:1134) at org.apache.maven.plugin.compiler.CompilerMojo.execute (CompilerMojo.java:187) at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo (DefaultBuildPluginManager.java:137) at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:210) at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:156) at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:148) at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:117) at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:81) at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build (SingleThreadedBuilder.java:56) at org.apache.maven.lifecycle.internal.LifecycleStarter.execute (LifecycleStarter.java:128) at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:305) at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:192) at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:105) at org.apache.maven.cli.MavenCli.execute (MavenCli.java:957) at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:289) at org.apache.maven.cli.MavenCli.main (MavenCli.java:193) at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native Method) at jdk.internal.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:62) at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke (Method.java:567) at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced (Launcher.java:282) at org.codehaus.plexus.classworlds.launcher.Launcher.launch (Launcher.java:225) at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode (Launcher.java:406) at org.codehaus.plexus.classworlds.launcher.Launcher.main (Launcher.java:347) [ERROR] [ERROR] [ERROR] For more information about the errors and possible solutions, please read the following articles: [ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionException [ERROR] [ERROR] After correcting the problems, you can resume the build with the command [ERROR] mvn -rf :works-editor-antlr4 -------------- next part -------------- Apache Maven 3.6.3 (cecedd343002696d0abb50b32b541b8a6ba2883f) Maven home: /usr/local/Cellar/maven/3.6.3_1/libexec Java version: 13.0.2, vendor: N/A, runtime: /usr/local/Cellar/openjdk/13.0.2+8_2/libexec/openjdk.jdk/Contents/Home Default locale: en_US, platform encoding: UTF-8 OS name: "mac os x", version: "10.14.6", arch: "x86_64", family: "mac" [DEBUG] Created new class realm maven.api [DEBUG] Importing foreign packages into class realm maven.api [DEBUG] Imported: javax.annotation.* < plexus.core [DEBUG] Imported: javax.annotation.security.* < plexus.core [DEBUG] Imported: javax.enterprise.inject.* < plexus.core [DEBUG] Imported: javax.enterprise.util.* < plexus.core [DEBUG] Imported: javax.inject.* < plexus.core [DEBUG] Imported: org.apache.maven.* < plexus.core [DEBUG] Imported: org.apache.maven.artifact < plexus.core [DEBUG] Imported: org.apache.maven.classrealm < plexus.core [DEBUG] Imported: org.apache.maven.cli < plexus.core [DEBUG] Imported: org.apache.maven.configuration < plexus.core [DEBUG] Imported: org.apache.maven.exception < plexus.core [DEBUG] Imported: org.apache.maven.execution < plexus.core [DEBUG] Imported: org.apache.maven.execution.scope < plexus.core [DEBUG] Imported: org.apache.maven.lifecycle < plexus.core [DEBUG] Imported: org.apache.maven.model < plexus.core [DEBUG] Imported: org.apache.maven.monitor < plexus.core [DEBUG] Imported: org.apache.maven.plugin < plexus.core [DEBUG] Imported: org.apache.maven.profiles < plexus.core [DEBUG] Imported: org.apache.maven.project < plexus.core [DEBUG] Imported: org.apache.maven.reporting < plexus.core [DEBUG] Imported: org.apache.maven.repository < plexus.core [DEBUG] Imported: org.apache.maven.rtinfo < plexus.core [DEBUG] Imported: org.apache.maven.settings < plexus.core [DEBUG] Imported: org.apache.maven.toolchain < plexus.core [DEBUG] Imported: org.apache.maven.usability < plexus.core [DEBUG] Imported: org.apache.maven.wagon.* < plexus.core [DEBUG] Imported: org.apache.maven.wagon.authentication < plexus.core [DEBUG] Imported: org.apache.maven.wagon.authorization < plexus.core [DEBUG] Imported: org.apache.maven.wagon.events < plexus.core [DEBUG] Imported: org.apache.maven.wagon.observers < plexus.core [DEBUG] Imported: org.apache.maven.wagon.proxy < plexus.core [DEBUG] Imported: org.apache.maven.wagon.repository < plexus.core [DEBUG] Imported: org.apache.maven.wagon.resource < plexus.core [DEBUG] Imported: org.codehaus.classworlds < plexus.core [DEBUG] Imported: org.codehaus.plexus.* < plexus.core [DEBUG] Imported: org.codehaus.plexus.classworlds < plexus.core [DEBUG] Imported: org.codehaus.plexus.component < plexus.core [DEBUG] Imported: org.codehaus.plexus.configuration < plexus.core [DEBUG] Imported: org.codehaus.plexus.container < plexus.core [DEBUG] Imported: org.codehaus.plexus.context < plexus.core [DEBUG] Imported: org.codehaus.plexus.lifecycle < plexus.core [DEBUG] Imported: org.codehaus.plexus.logging < plexus.core [DEBUG] Imported: org.codehaus.plexus.personality < plexus.core [DEBUG] Imported: org.codehaus.plexus.util.xml.Xpp3Dom < plexus.core [DEBUG] Imported: org.codehaus.plexus.util.xml.pull.XmlPullParser < plexus.core [DEBUG] Imported: org.codehaus.plexus.util.xml.pull.XmlPullParserException < plexus.core [DEBUG] Imported: org.codehaus.plexus.util.xml.pull.XmlSerializer < plexus.core [DEBUG] Imported: org.eclipse.aether.* < plexus.core [DEBUG] Imported: org.eclipse.aether.artifact < plexus.core [DEBUG] Imported: org.eclipse.aether.collection < plexus.core [DEBUG] Imported: org.eclipse.aether.deployment < plexus.core [DEBUG] Imported: org.eclipse.aether.graph < plexus.core [DEBUG] Imported: org.eclipse.aether.impl < plexus.core [DEBUG] Imported: org.eclipse.aether.installation < plexus.core [DEBUG] Imported: org.eclipse.aether.internal.impl < plexus.core [DEBUG] Imported: org.eclipse.aether.metadata < plexus.core [DEBUG] Imported: org.eclipse.aether.repository < plexus.core [DEBUG] Imported: org.eclipse.aether.resolution < plexus.core [DEBUG] Imported: org.eclipse.aether.spi < plexus.core [DEBUG] Imported: org.eclipse.aether.transfer < plexus.core [DEBUG] Imported: org.eclipse.aether.version < plexus.core [DEBUG] Imported: org.fusesource.jansi.* < plexus.core [DEBUG] Imported: org.slf4j.* < plexus.core [DEBUG] Imported: org.slf4j.event.* < plexus.core [DEBUG] Imported: org.slf4j.helpers.* < plexus.core [DEBUG] Imported: org.slf4j.spi.* < plexus.core [DEBUG] Populating class realm maven.api [INFO] Error stacktraces are turned on. [DEBUG] Message scheme: color [DEBUG] Message styles: debug info warning error success failure strong mojo project [DEBUG] Reading global settings from /usr/local/Cellar/maven/3.6.3_1/libexec/conf/settings.xml [DEBUG] Reading user settings from /Users/janke/.m2/settings.xml [DEBUG] Reading global toolchains from /usr/local/Cellar/maven/3.6.3_1/libexec/conf/toolchains.xml [DEBUG] Reading user toolchains from /Users/janke/.m2/toolchains.xml [DEBUG] Using local repository at /Users/janke/.m2/repository [DEBUG] Using manager EnhancedLocalRepositoryManager with priority 10.0 for /Users/janke/.m2/repository [INFO] Scanning for projects... [DEBUG] Extension realms for project net.apjanke.antlrworks-jank:antlrworks-jank:pom:2.6.0-SNAPSHOT: (none) [DEBUG] Looking up lifecycle mappings for packaging pom from ClassRealm[plexus.core, parent: null] [DEBUG] Extension realms for project net.apjanke.antlrworks-jank:editor-completionext:jar:2.6.0-SNAPSHOT: (none) [DEBUG] Looking up lifecycle mappings for packaging jar from ClassRealm[plexus.core, parent: null] [DEBUG] Extension realms for project net.apjanke.antlrworks-jank:editor-containingfolder:jar:2.6.0-SNAPSHOT: (none) [DEBUG] Looking up lifecycle mappings for packaging jar from ClassRealm[plexus.core, parent: null] [DEBUG] Dependency collection stats: {ConflictMarker.analyzeTime=1351444, ConflictMarker.markTime=561068, ConflictMarker.nodeCount=207, ConflictIdSorter.graphTime=768446, ConflictIdSorter.topsortTime=349736, ConflictIdSorter.conflictIdCount=50, ConflictIdSorter.conflictIdCycleCount=0, ConflictResolver.totalTime=5683332, ConflictResolver.conflictItemCount=116, DefaultDependencyCollector.collectTime=304078066, DefaultDependencyCollector.transformTime=10612593} [DEBUG] org.codehaus.mojo:nbm-maven-plugin:jar:3.13 [DEBUG] org.apache.maven:maven-artifact:jar:2.2.0:compile [DEBUG] org.apache.maven:maven-plugin-api:jar:2.0.1:compile [DEBUG] org.apache.maven.plugin-tools:maven-plugin-annotations:jar:3.0:compile [DEBUG] org.apache.ant:ant:jar:1.9.2:compile [DEBUG] org.apache.ant:ant-launcher:jar:1.9.2:compile [DEBUG] org.apache.maven:maven-project:jar:2.2.0:compile [DEBUG] org.apache.maven:maven-settings:jar:2.2.0:compile [DEBUG] org.apache.maven:maven-profile:jar:2.2.0:compile [DEBUG] org.apache.maven:maven-plugin-registry:jar:2.2.0:compile [DEBUG] org.codehaus.plexus:plexus-interpolation:jar:1.11:compile [DEBUG] org.codehaus.plexus:plexus-utils:jar:3.0:compile [DEBUG] org.codehaus.plexus:plexus-archiver:jar:1.2:compile [DEBUG] org.apache.maven.shared:maven-dependency-tree:jar:2.1:compile [DEBUG] org.codehaus.plexus:plexus-component-annotations:jar:1.5.5:compile [DEBUG] org.eclipse.aether:aether-util:jar:0.9.0.M2:compile [DEBUG] org.apache.maven.shared:maven-dependency-analyzer:jar:1.2:compile [DEBUG] asm:asm:jar:3.0:compile [DEBUG] org.apache.maven:maven-model:jar:2.2.0:compile [DEBUG] org.apache.maven:maven-artifact-manager:jar:2.2.0:compile [DEBUG] org.apache.maven:maven-repository-metadata:jar:2.2.0:compile [DEBUG] backport-util-concurrent:backport-util-concurrent:jar:3.1:compile [DEBUG] org.codehaus.plexus:plexus-container-default:jar:1.0-alpha-9-stable-1:compile [DEBUG] junit:junit:jar:4.10:test (scope managed from default) (version managed from default) [DEBUG] org.hamcrest:hamcrest-core:jar:1.1:test [DEBUG] classworlds:classworlds:jar:1.1-alpha-2:compile [DEBUG] org.apache.maven.shared:maven-filtering:jar:1.0:compile [DEBUG] org.apache.maven:maven-monitor:jar:2.0.6:compile [DEBUG] org.sonatype.plexus:plexus-build-api:jar:0.0.4:compile [DEBUG] org.apache.maven:maven-core:jar:2.2.0:compile [DEBUG] org.apache.maven:maven-plugin-parameter-documenter:jar:2.2.0:compile [DEBUG] org.slf4j:slf4j-jdk14:jar:1.5.6:runtime [DEBUG] org.slf4j:slf4j-api:jar:1.5.6:runtime [DEBUG] org.slf4j:jcl-over-slf4j:jar:1.5.6:runtime [DEBUG] org.apache.maven.reporting:maven-reporting-api:jar:2.2.0:compile [DEBUG] org.apache.maven.doxia:doxia-sink-api:jar:1.1:compile [DEBUG] org.apache.maven.doxia:doxia-logging-api:jar:1.1:compile [DEBUG] org.apache.maven:maven-error-diagnostics:jar:2.2.0:compile [DEBUG] commons-cli:commons-cli:jar:1.2:compile [DEBUG] org.apache.maven:maven-plugin-descriptor:jar:2.2.0:compile [DEBUG] org.codehaus.plexus:plexus-interactivity-api:jar:1.0-alpha-4:compile [DEBUG] org.sonatype.plexus:plexus-sec-dispatcher:jar:1.3:compile [DEBUG] org.sonatype.plexus:plexus-cipher:jar:1.4:compile [DEBUG] javax.help:javahelp:jar:2.0.05:runtime [DEBUG] org.codehaus.mojo:nbm-maven-harness:jar:8.0-beta:compile [DEBUG] org.codehaus.plexus:plexus-io:jar:2.0.2:compile [DEBUG] org.codehaus.mojo:nb-shared:jar:1.2:compile [DEBUG] com.google.guava:guava:jar:12.0:compile [DEBUG] com.google.code.findbugs:jsr305:jar:1.3.9:compile [DEBUG] Created new class realm extension>org.codehaus.mojo:nbm-maven-plugin:3.13 [DEBUG] Importing foreign packages into class realm extension>org.codehaus.mojo:nbm-maven-plugin:3.13 [DEBUG] Imported: < maven.api [DEBUG] Populating class realm extension>org.codehaus.mojo:nbm-maven-plugin:3.13 [DEBUG] Included: org.codehaus.mojo:nbm-maven-plugin:jar:3.13 [DEBUG] Included: org.apache.maven.plugin-tools:maven-plugin-annotations:jar:3.0 [DEBUG] Included: org.apache.ant:ant:jar:1.9.2 [DEBUG] Included: org.apache.ant:ant-launcher:jar:1.9.2 [DEBUG] Included: org.codehaus.plexus:plexus-interpolation:jar:1.11 [DEBUG] Included: org.codehaus.plexus:plexus-utils:jar:3.0 [DEBUG] Included: org.codehaus.plexus:plexus-archiver:jar:1.2 [DEBUG] Included: org.apache.maven.shared:maven-dependency-tree:jar:2.1 [DEBUG] Included: org.codehaus.plexus:plexus-component-annotations:jar:1.5.5 [DEBUG] Included: org.eclipse.aether:aether-util:jar:0.9.0.M2 [DEBUG] Included: org.apache.maven.shared:maven-dependency-analyzer:jar:1.2 [DEBUG] Included: asm:asm:jar:3.0 [DEBUG] Included: backport-util-concurrent:backport-util-concurrent:jar:3.1 [DEBUG] Included: org.apache.maven.shared:maven-filtering:jar:1.0 [DEBUG] Included: org.sonatype.plexus:plexus-build-api:jar:0.0.4 [DEBUG] Included: org.slf4j:slf4j-jdk14:jar:1.5.6 [DEBUG] Included: org.slf4j:jcl-over-slf4j:jar:1.5.6 [DEBUG] Included: org.apache.maven.reporting:maven-reporting-api:jar:2.2.0 [DEBUG] Included: org.apache.maven.doxia:doxia-sink-api:jar:1.1 [DEBUG] Included: org.apache.maven.doxia:doxia-logging-api:jar:1.1 [DEBUG] Included: commons-cli:commons-cli:jar:1.2 [DEBUG] Included: org.codehaus.plexus:plexus-interactivity-api:jar:1.0-alpha-4 [DEBUG] Included: org.sonatype.plexus:plexus-sec-dispatcher:jar:1.3 [DEBUG] Included: org.sonatype.plexus:plexus-cipher:jar:1.4 [DEBUG] Included: javax.help:javahelp:jar:2.0.05 [DEBUG] Included: org.codehaus.mojo:nbm-maven-harness:jar:8.0-beta [DEBUG] Included: org.codehaus.plexus:plexus-io:jar:2.0.2 [DEBUG] Included: org.codehaus.mojo:nb-shared:jar:1.2 [DEBUG] Included: com.google.guava:guava:jar:12.0 [DEBUG] Included: com.google.code.findbugs:jsr305:jar:1.3.9 [DEBUG] Extension realms for project net.apjanke.antlrworks-jank:antlr-works-netbeans:nbm:2.6.0-SNAPSHOT: [ClassRealm[extension>org.codehaus.mojo:nbm-maven-plugin:3.13, parent: jdk.internal.loader.ClassLoaders$AppClassLoader at 55054057]] [DEBUG] Created new class realm project>net.apjanke.antlrworks-jank:antlr-works-netbeans:2.6.0-SNAPSHOT [DEBUG] Populating class realm project>net.apjanke.antlrworks-jank:antlr-works-netbeans:2.6.0-SNAPSHOT [DEBUG] Looking up lifecycle mappings for packaging nbm from ClassRealm[project>net.apjanke.antlrworks-jank:antlr-works-netbeans:2.6.0-SNAPSHOT, parent: ClassRealm[maven.api, parent: null]] [DEBUG] Extension realms for project net.apjanke.antlrworks-jank:antlr-works-editor:nbm:2.6.0-SNAPSHOT: [ClassRealm[extension>org.codehaus.mojo:nbm-maven-plugin:3.13, parent: jdk.internal.loader.ClassLoaders$AppClassLoader at 55054057]] [DEBUG] Looking up lifecycle mappings for packaging nbm from ClassRealm[project>net.apjanke.antlrworks-jank:antlr-works-netbeans:2.6.0-SNAPSHOT, parent: ClassRealm[maven.api, parent: null]] [DEBUG] Extension realms for project net.apjanke.antlrworks-jank:tvl-editor-actions:jar:2.6.0-SNAPSHOT: (none) [DEBUG] Looking up lifecycle mappings for packaging jar from ClassRealm[plexus.core, parent: null] [DEBUG] Extension realms for project net.apjanke.antlrworks-jank:tvl-editor-whitespace:jar:2.6.0-SNAPSHOT: (none) [DEBUG] Looking up lifecycle mappings for packaging jar from ClassRealm[plexus.core, parent: null] [DEBUG] Extension realms for project net.apjanke.antlrworks-jank:works-editor-antlr3:jar:2.6.0-SNAPSHOT: (none) [DEBUG] Looking up lifecycle mappings for packaging jar from ClassRealm[plexus.core, parent: null] [DEBUG] Extension realms for project net.apjanke.antlrworks-jank:works-editor-antlr4:jar:2.6.0-SNAPSHOT: (none) [DEBUG] Looking up lifecycle mappings for packaging jar from ClassRealm[plexus.core, parent: null] [INFO] ------------------------------------------------------------------------ [INFO] Reactor Build Order: [INFO] [INFO] ANTLRWorks2-Jank [pom] [INFO] editor-completionext [jar] [INFO] editor-containingfolder [jar] [INFO] antlr-works-netbeans [nbm] [INFO] tvl-editor-actions [jar] [INFO] works-editor-antlr4 [jar] [INFO] antlr-works-editor [nbm] [INFO] tvl-editor-whitespace [jar] [INFO] works-editor-antlr3 [jar] [DEBUG] === REACTOR BUILD PLAN ================================================ [DEBUG] Project: net.apjanke.antlrworks-jank:antlrworks-jank:pom:2.6.0-SNAPSHOT [DEBUG] Tasks: [compile] [DEBUG] Style: Regular [DEBUG] ----------------------------------------------------------------------- [DEBUG] Project: net.apjanke.antlrworks-jank:editor-completionext:jar:2.6.0-SNAPSHOT [DEBUG] Tasks: [compile] [DEBUG] Style: Regular [DEBUG] ----------------------------------------------------------------------- [DEBUG] Project: net.apjanke.antlrworks-jank:editor-containingfolder:jar:2.6.0-SNAPSHOT [DEBUG] Tasks: [compile] [DEBUG] Style: Regular [DEBUG] ----------------------------------------------------------------------- [DEBUG] Project: net.apjanke.antlrworks-jank:antlr-works-netbeans:nbm:2.6.0-SNAPSHOT [DEBUG] Tasks: [compile] [DEBUG] Style: Regular [DEBUG] ----------------------------------------------------------------------- [DEBUG] Project: net.apjanke.antlrworks-jank:tvl-editor-actions:jar:2.6.0-SNAPSHOT [DEBUG] Tasks: [compile] [DEBUG] Style: Regular [DEBUG] ----------------------------------------------------------------------- [DEBUG] Project: net.apjanke.antlrworks-jank:works-editor-antlr4:jar:2.6.0-SNAPSHOT [DEBUG] Tasks: [compile] [DEBUG] Style: Regular [DEBUG] ----------------------------------------------------------------------- [DEBUG] Project: net.apjanke.antlrworks-jank:antlr-works-editor:nbm:2.6.0-SNAPSHOT [DEBUG] Tasks: [compile] [DEBUG] Style: Regular [DEBUG] ----------------------------------------------------------------------- [DEBUG] Project: net.apjanke.antlrworks-jank:tvl-editor-whitespace:jar:2.6.0-SNAPSHOT [DEBUG] Tasks: [compile] [DEBUG] Style: Regular [DEBUG] ----------------------------------------------------------------------- [DEBUG] Project: net.apjanke.antlrworks-jank:works-editor-antlr3:jar:2.6.0-SNAPSHOT [DEBUG] Tasks: [compile] [DEBUG] Style: Regular [DEBUG] ======================================================================= [INFO] [INFO] ------------< net.apjanke.antlrworks-jank:antlrworks-jank >------------- [INFO] Building ANTLRWorks2-Jank 2.6.0-SNAPSHOT [1/9] [INFO] --------------------------------[ pom ]--------------------------------- [DEBUG] Lifecycle default -> [validate, initialize, generate-sources, process-sources, generate-resources, process-resources, compile, process-classes, generate-test-sources, process-test-sources, generate-test-resources, process-test-resources, test-compile, process-test-classes, test, prepare-package, package, pre-integration-test, integration-test, post-integration-test, verify, install, deploy] [DEBUG] Lifecycle clean -> [pre-clean, clean, post-clean] [DEBUG] Lifecycle site -> [pre-site, site, post-site, site-deploy] [DEBUG] === PROJECT BUILD PLAN ================================================ [DEBUG] Project: net.apjanke.antlrworks-jank:antlrworks-jank:2.6.0-SNAPSHOT [DEBUG] Dependencies (collect): [] [DEBUG] Dependencies (resolve): [] [DEBUG] Repositories (dependencies): [netbeans (http://bits.netbeans.org/nexus/content/groups/netbeans/, default, releases+snapshots), atricore (http://repository.atricore.org/m2-release-repository/, default, releases+snapshots), central (https://repo.maven.apache.org/maven2, default, releases)] [DEBUG] Repositories (plugins) : [central (https://repo.maven.apache.org/maven2, default, releases)] [DEBUG] ======================================================================= [INFO] [INFO] ----------< net.apjanke.antlrworks-jank:editor-completionext >---------- [INFO] Building editor-completionext 2.6.0-SNAPSHOT [2/9] [INFO] --------------------------------[ jar ]--------------------------------- [DEBUG] Lifecycle default -> [validate, initialize, generate-sources, process-sources, generate-resources, process-resources, compile, process-classes, generate-test-sources, process-test-sources, generate-test-resources, process-test-resources, test-compile, process-test-classes, test, prepare-package, package, pre-integration-test, integration-test, post-integration-test, verify, install, deploy] [DEBUG] Lifecycle clean -> [pre-clean, clean, post-clean] [DEBUG] Lifecycle site -> [pre-site, site, post-site, site-deploy] [DEBUG] Lifecycle default -> [validate, initialize, generate-sources, process-sources, generate-resources, process-resources, compile, process-classes, generate-test-sources, process-test-sources, generate-test-resources, process-test-resources, test-compile, process-test-classes, test, prepare-package, package, pre-integration-test, integration-test, post-integration-test, verify, install, deploy] [DEBUG] Lifecycle clean -> [pre-clean, clean, post-clean] [DEBUG] Lifecycle site -> [pre-site, site, post-site, site-deploy] [DEBUG] Lifecycle default -> [validate, initialize, generate-sources, process-sources, generate-resources, process-resources, compile, process-classes, generate-test-sources, process-test-sources, generate-test-resources, process-test-resources, test-compile, process-test-classes, test, prepare-package, package, pre-integration-test, integration-test, post-integration-test, verify, install, deploy] [DEBUG] Lifecycle clean -> [pre-clean, clean, post-clean] [DEBUG] Lifecycle site -> [pre-site, site, post-site, site-deploy] [DEBUG] === PROJECT BUILD PLAN ================================================ [DEBUG] Project: net.apjanke.antlrworks-jank:editor-completionext:2.6.0-SNAPSHOT [DEBUG] Dependencies (collect): [] [DEBUG] Dependencies (resolve): [compile] [DEBUG] Repositories (dependencies): [netbeans (http://bits.netbeans.org/nexus/content/groups/netbeans/, default, releases+snapshots), atricore (http://repository.atricore.org/m2-release-repository/, default, releases+snapshots), central (https://repo.maven.apache.org/maven2, default, releases)] [DEBUG] Repositories (plugins) : [central (https://repo.maven.apache.org/maven2, default, releases)] [DEBUG] ----------------------------------------------------------------------- [DEBUG] Goal: org.apache.maven.plugins:maven-resources-plugin:2.6:resources (default-resources) [DEBUG] Style: Regular [DEBUG] Configuration: ${encoding} ${maven.resources.escapeString} ${maven.resources.escapeWindowsPaths} ${maven.resources.includeEmptyDirs} ${maven.resources.overwrite} ${maven.resources.supportMultiLineFiltering} [DEBUG] ----------------------------------------------------------------------- [DEBUG] Goal: org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile (default-compile) [DEBUG] Style: Regular [DEBUG] Configuration: ${maven.compiler.compilerId} ${maven.compiler.compilerReuseStrategy} ${maven.compiler.compilerVersion} ${maven.compiler.debug} ${maven.compiler.debuglevel} ${encoding} ${maven.compiler.executable} ${maven.compiler.failOnError} ${maven.compiler.failOnWarning} ${maven.compiler.forceJavacCompilerUse} ${maven.compiler.fork} ${maven.compiler.maxmem} ${maven.compiler.meminitial} ${maven.compiler.optimize} ${maven.compiler.parameters} 13 ${maven.compiler.showDeprecation} ${maven.compiler.showWarnings} ${maven.main.skip} ${maven.compiler.skipMultiThreadWarning} 1.8 ${lastModGranularityMs} 1.8 ${maven.compiler.useIncrementalCompilation} ${maven.compiler.verbose} [DEBUG] ======================================================================= [DEBUG] Dependency collection stats: {ConflictMarker.analyzeTime=912242, ConflictMarker.markTime=569751, ConflictMarker.nodeCount=557, ConflictIdSorter.graphTime=482284, ConflictIdSorter.topsortTime=317278, ConflictIdSorter.conflictIdCount=80, ConflictIdSorter.conflictIdCycleCount=1, ConflictResolver.totalTime=6492406, ConflictResolver.conflictItemCount=555, DefaultDependencyCollector.collectTime=120339435, DefaultDependencyCollector.transformTime=8924891} [DEBUG] net.apjanke.antlrworks-jank:editor-completionext:jar:2.6.0-SNAPSHOT [DEBUG] javax.annotation:javax.annotation-api:jar:1.3.2:compile [DEBUG] org.netbeans.api:org-netbeans-api-annotations-common:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-spi-palette:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-awt:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-dialogs:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-explorer:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-swing-tabcontrol:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-filesystems:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-loaders:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-api-scripting:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-api-templates:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-modules:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-nodes:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-text:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-util:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-util-lookup:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-windows:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-editor-util:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-editor:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-api-progress:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-api-progress-nb:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-editor-document:jar:RELEASE112:compile [DEBUG] org.netbeans.modules:org-netbeans-modules-editor-fold-nbui:jar:RELEASE112:runtime [DEBUG] org.netbeans.api:org-netbeans-modules-editor-guards:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-editor-indent:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-editor-lib2:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-lexer:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-actions:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-filesystems-nb:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-editor-fold:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-editor-settings-lib:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-util-ui:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-editor-lib:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-editor-mimelookup:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-editor-settings:jar:RELEASE112:compile [DEBUG] org.netbeans.modules:org-netbeans-modules-editor-settings-storage:jar:RELEASE112:compile [DEBUG] org.netbeans.modules:org-netbeans-modules-options-keymap:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-options-api:jar:RELEASE112:compile [DEBUG] org.netbeans.modules:org-netbeans-core:jar:RELEASE112:runtime [DEBUG] org.netbeans.modules:org-netbeans-bootstrap:jar:RELEASE112:runtime [DEBUG] org.netbeans.api:org-netbeans-modules-keyring:jar:RELEASE112:runtime [DEBUG] org.netbeans.api:org-netbeans-swing-plaf:jar:RELEASE112:runtime [DEBUG] org.netbeans.api:org-openide-io:jar:RELEASE112:runtime [DEBUG] org.netbeans.api:org-netbeans-api-intent:jar:RELEASE112:runtime [DEBUG] org.netbeans.api:org-netbeans-api-io:jar:RELEASE112:runtime [DEBUG] org.netbeans.modules:org-netbeans-core-startup:jar:RELEASE112:runtime [DEBUG] org.netbeans.api:org-netbeans-libs-asm:jar:RELEASE112:runtime [DEBUG] org.ow2.asm:asm-all:jar:5.0.1:runtime [DEBUG] org.netbeans.modules:org-netbeans-core-startup-base:jar:RELEASE112:runtime [DEBUG] org.netbeans.api:org-netbeans-spi-quicksearch:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-swing-outline:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-spi-editor-hints-projects:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-editor-tools-storage:jar:RELEASE112:compile [DEBUG] org.netbeans.modules:org-netbeans-modules-options-editor:jar:RELEASE112:runtime [DEBUG] org.netbeans.api:org-netbeans-modules-projectapi:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-projectuiapi:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-spi-editor-hints:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-spi-navigator:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-parsing-indexing:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-api-java-classpath:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-libs-lucene:jar:RELEASE112:compile [DEBUG] org.apache.lucene:lucene-core:jar:3.5.0:compile [DEBUG] org.netbeans.api:org-netbeans-modules-parsing-api:jar:RELEASE112:compile [DEBUG] org.netbeans.modules:org-netbeans-modules-parsing-lucene:jar:RELEASE112:runtime [DEBUG] org.netbeans.modules:org-netbeans-modules-masterfs:jar:RELEASE112:runtime [DEBUG] org.netbeans.modules:org-netbeans-modules-project-indexingbridge:jar:RELEASE112:runtime [DEBUG] org.netbeans.api:org-netbeans-modules-projectuiapi-base:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-queries:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-spi-tasklist:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-sampler:jar:RELEASE112:compile [DEBUG] org.antlr:antlr4-runtime:jar:4.8-1:compile [DEBUG] org.antlr:stringtemplate:jar:4.0.2:compile [DEBUG] org.antlr:antlr-runtime:jar:3.3:compile [DEBUG] org.antlr:antlr4:jar:4.8-1:compile [DEBUG] org.antlr:ST4:jar:4.3:compile [DEBUG] org.abego.treelayout:org.abego.treelayout.core:jar:1.0.3:compile [DEBUG] org.glassfish:javax.json:jar:1.0.4:compile [DEBUG] com.ibm.icu:icu4j:jar:61.1:compile [DEBUG] junit:junit:jar:4.13:test [DEBUG] org.hamcrest:hamcrest-core:jar:1.3:test [INFO] [INFO] --- maven-resources-plugin:2.6:resources (default-resources) @ editor-completionext --- [DEBUG] Dependency collection stats: {ConflictMarker.analyzeTime=108659, ConflictMarker.markTime=35302, ConflictMarker.nodeCount=77, ConflictIdSorter.graphTime=42686, ConflictIdSorter.topsortTime=23744, ConflictIdSorter.conflictIdCount=26, ConflictIdSorter.conflictIdCycleCount=0, ConflictResolver.totalTime=446791, ConflictResolver.conflictItemCount=74, DefaultDependencyCollector.collectTime=9111481, DefaultDependencyCollector.transformTime=683798} [DEBUG] org.apache.maven.plugins:maven-resources-plugin:jar:2.6 [DEBUG] org.apache.maven:maven-plugin-api:jar:2.0.6:compile [DEBUG] org.apache.maven:maven-project:jar:2.0.6:compile [DEBUG] org.apache.maven:maven-profile:jar:2.0.6:compile [DEBUG] org.apache.maven:maven-artifact-manager:jar:2.0.6:compile [DEBUG] org.apache.maven:maven-plugin-registry:jar:2.0.6:compile [DEBUG] org.apache.maven:maven-core:jar:2.0.6:compile [DEBUG] org.apache.maven:maven-plugin-parameter-documenter:jar:2.0.6:compile [DEBUG] org.apache.maven.reporting:maven-reporting-api:jar:2.0.6:compile [DEBUG] org.apache.maven.doxia:doxia-sink-api:jar:1.0-alpha-7:compile [DEBUG] org.apache.maven:maven-repository-metadata:jar:2.0.6:compile [DEBUG] org.apache.maven:maven-error-diagnostics:jar:2.0.6:compile [DEBUG] commons-cli:commons-cli:jar:1.0:compile [DEBUG] org.apache.maven:maven-plugin-descriptor:jar:2.0.6:compile [DEBUG] org.codehaus.plexus:plexus-interactivity-api:jar:1.0-alpha-4:compile [DEBUG] classworlds:classworlds:jar:1.1:compile [DEBUG] org.apache.maven:maven-artifact:jar:2.0.6:compile [DEBUG] org.apache.maven:maven-settings:jar:2.0.6:compile [DEBUG] org.apache.maven:maven-model:jar:2.0.6:compile [DEBUG] org.apache.maven:maven-monitor:jar:2.0.6:compile [DEBUG] org.codehaus.plexus:plexus-container-default:jar:1.0-alpha-9-stable-1:compile [DEBUG] junit:junit:jar:3.8.1:compile [DEBUG] org.codehaus.plexus:plexus-utils:jar:2.0.5:compile [DEBUG] org.apache.maven.shared:maven-filtering:jar:1.1:compile [DEBUG] org.sonatype.plexus:plexus-build-api:jar:0.0.4:compile [DEBUG] org.codehaus.plexus:plexus-interpolation:jar:1.13:compile [DEBUG] Created new class realm plugin>org.apache.maven.plugins:maven-resources-plugin:2.6 [DEBUG] Importing foreign packages into class realm plugin>org.apache.maven.plugins:maven-resources-plugin:2.6 [DEBUG] Imported: < maven.api [DEBUG] Populating class realm plugin>org.apache.maven.plugins:maven-resources-plugin:2.6 [DEBUG] Included: org.apache.maven.plugins:maven-resources-plugin:jar:2.6 [DEBUG] Included: org.apache.maven.reporting:maven-reporting-api:jar:2.0.6 [DEBUG] Included: org.apache.maven.doxia:doxia-sink-api:jar:1.0-alpha-7 [DEBUG] Included: commons-cli:commons-cli:jar:1.0 [DEBUG] Included: org.codehaus.plexus:plexus-interactivity-api:jar:1.0-alpha-4 [DEBUG] Included: junit:junit:jar:3.8.1 [DEBUG] Included: org.codehaus.plexus:plexus-utils:jar:2.0.5 [DEBUG] Included: org.apache.maven.shared:maven-filtering:jar:1.1 [DEBUG] Included: org.sonatype.plexus:plexus-build-api:jar:0.0.4 [DEBUG] Included: org.codehaus.plexus:plexus-interpolation:jar:1.13 [DEBUG] Configuring mojo org.apache.maven.plugins:maven-resources-plugin:2.6:resources from plugin realm ClassRealm[plugin>org.apache.maven.plugins:maven-resources-plugin:2.6, parent: jdk.internal.loader.ClassLoaders$AppClassLoader at 55054057] [DEBUG] Configuring mojo 'org.apache.maven.plugins:maven-resources-plugin:2.6:resources' with basic configurator --> [DEBUG] (f) buildFilters = [] [DEBUG] (f) encoding = UTF-8 [DEBUG] (f) escapeWindowsPaths = true [DEBUG] (s) includeEmptyDirs = false [DEBUG] (s) outputDirectory = /Users/janke/local/repos/antlrworks-jank/editor-completionext/target/classes [DEBUG] (s) overwrite = false [DEBUG] (f) project = MavenProject: net.apjanke.antlrworks-jank:editor-completionext:2.6.0-SNAPSHOT @ /Users/janke/local/repos/antlrworks-jank/editor-completionext/pom.xml [DEBUG] (s) resources = [Resource {targetPath: null, filtering: false, FileSet {directory: /Users/janke/local/repos/antlrworks-jank/editor-completionext/src/main/resources, PatternSet [includes: {}, excludes: {}]}}] [DEBUG] (f) session = org.apache.maven.execution.MavenSession at 58472096 [DEBUG] (f) supportMultiLineFiltering = false [DEBUG] (f) useBuildFilters = true [DEBUG] (s) useDefaultDelimiters = true [DEBUG] -- end configuration -- [DEBUG] properties used {env.TERM=xterm-256color, java.specification.version=13, sun.arch.data.model=64, env.CLICOLOR=1, java.vendor.url=https://openjdk.java.net/, env.COLORFGBG=12;8, env.GOPATH=/Users/janke/local/go-work, sun.boot.library.path=/usr/local/Cellar/openjdk/13.0.2+8_2/libexec/openjdk.jdk/Contents/Home/lib, sun.java.command=org.codehaus.plexus.classworlds.launcher.Launcher -X -e compile, jdk.debug=release, maven.version=3.6.3, java.specification.vendor=Oracle Corporation, java.version.date=2020-01-14, version=2.6.0-SNAPSHOT, java.home=/usr/local/Cellar/openjdk/13.0.2+8_2/libexec/openjdk.jdk/Contents/Home, env.GUIEDITOR=subl, java.vm.specification.vendor=Oracle Corporation, java.specification.name=Java Platform API Specification, sun.management.compiler=HotSpot 64-Bit Tiered Compilers, env.LC_TERMINAL_VERSION=3.3.9, java.runtime.version=13.0.2+8, env.LSCOLORS=gxxxdxdxdxexexdxdxgxgx, env.PATH=/usr/local/sbin:/usr/local/lib/ruby/gems/2.7.0/bin:/usr/local/lib/ruby/gems/2.6.0/bin:/usr/local/opt/ruby/bin:/Users/janke/bin:/usr/local/bin:/usr/local/sbin:/usr/local/lib/ruby/gems/2.7.0/bin:/usr/local/lib/ruby/gems/2.6.0/bin:/usr/local/opt/ruby/bin:/Users/janke/bin:/usr/local/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Applications/VMware Fusion.app/Contents/Public:/Library/TeX/texbin:/usr/local/MacGPG2/bin:/usr/local/share/dotnet:/opt/X11/bin:~/.dotnet/tools:/Library/Frameworks/Mono.framework/Versions/Current/Commands:/Users/janke/local/go-work/bin:/Users/janke/.rvm/bin:/Users/janke/local/go-work/bin:/Users/janke/.rvm/bin, env.LS_COLORS=di=36:so=33:pi=33:ex=33:bd=34:cd=34:su=33:sg=33:tw=36:ow=36:ln=00;04, file.encoding=UTF-8, env.HOMEBREW_EDITOR=subl, env.HISTCONTROL=ignoredups, env.SHLVL=2, java.io.tmpdir=/var/folders/_4/9mx5ryp52bb_z6drbcbrhwl40000gn/T/, java.version=13.0.2, java.vm.specification.name=Java Virtual Machine Specification, netbeans.version=RELEASE112, java.library.path=/Users/janke/Library/Java/Extensions:/Library/Java/Extensions:/Network/Library/Java/Extensions:/System/Library/Java/Extensions:/usr/lib/java:., java.vendor=N/A, classworlds.conf=/usr/local/Cellar/maven/3.6.3_1/libexec/bin/m2.conf, sun.io.unicode.encoding=UnicodeBig, env.LANG=en_US.UTF-8, env.HOMEBREW_SANDBOX=1, java.vm.specification.version=13, os.name=Mac OS X, env.DISPLAY=/private/tmp/com.apple.launchd.O2942FNRqP/org.macosforge.xquartz:0, release.username=apjanke, http.nonProxyHosts=local|*.local|169.254/16|*.169.254/16, maven.compiler.source=1.8, user.home=/Users/janke, env.XML_CATALOG_FILES=/usr/local/etc/xml/catalog, env.EDITOR=vi, brandingToken=antlrworks2jank, env.COLORTERM=truecolor, env.Apple_PubSub_Socket_Render=/private/tmp/com.apple.launchd.YiSqoN3EU9/Render, env.ITERM_SESSION_ID=w0t0p0:71DF3FA8-5482-4070-8BD4-354B2D5AA3BB, env.ITERM_PROFILE=Solarized - Dark - apj, path.separator=:, os.version=10.14.6, java.vm.name=OpenJDK 64-Bit Server VM, env.SHELL=/bin/zsh, gpg.executable=gpg2, env.HISTSIZE=32768, os.arch=x86_64, env.HISTFILESIZE=32768, maven.multiModuleProjectDirectory=/Users/janke/local/repos/antlrworks-jank, env.MAVEN_PROJECTBASEDIR=/Users/janke/local/repos/antlrworks-jank, java.vm.info=mixed mode, sharing, env.USER=janke, java.class.version=57.0, env.HOMEBREW_NO_AUTO_UPDATE=1, sun.jnu.encoding=UTF-8, env.HISTIGNORE=ls:ls *:cd:cd -:pwd:exit:date:* --help, env.VISUAL=subl -w, maven.build.version=Apache Maven 3.6.3 (cecedd343002696d0abb50b32b541b8a6ba2883f), maven.home=/usr/local/Cellar/maven/3.6.3_1/libexec, env.JAVA_HOME=/usr/local/opt/openjdk, env.LC_TERMINAL=iTerm2, file.separator=/, env.LESS=-R, java.vm.compressedOopsMode=Non-zero disjoint base, line.separator= , env.JAVA_MAIN_CLASS_12069=org.codehaus.plexus.classworlds.launcher.Launcher, env.TERM_PROGRAM_VERSION=3.3.9, user.name=janke, env.XPC_FLAGS=0x0, env.LOGNAME=janke, env.__CF_USER_TEXT_ENCODING=0x1F5:0x0:0x0, env.TERM_SESSION_ID=w0t0p0:71DF3FA8-5482-4070-8BD4-354B2D5AA3BB, env.SSH_AUTH_SOCK=/private/tmp/com.apple.launchd.9RGvwmJ5GD/Listeners, env.TERMINFO_DIRS=/Users/janke/.terminfo:/usr/local/share/terminfo:, maven.compiler.target=1.8, env.TMPDIR=/var/folders/_4/9mx5ryp52bb_z6drbcbrhwl40000gn/T/, library.jansi.path=/usr/local/Cellar/maven/3.6.3_1/libexec/lib/jansi-native, env.TERM_PROGRAM=iTerm.app, socksNonProxyHosts=local|*.local|169.254/16|*.169.254/16, env.OLDPWD=/Users/janke/local/repos/antlrworks-jank, env.PWD=/Users/janke/local/repos/antlrworks-jank, env.PAGER=less, java.class.path=/usr/local/Cellar/maven/3.6.3_1/libexec/boot/plexus-classworlds-2.6.0.jar, env.HOME=/Users/janke, java.vm.vendor=Oracle Corporation, gpg.keyname=24AF1EA5, maven.conf=/usr/local/Cellar/maven/3.6.3_1/libexec/conf, env.HOMEBREW_DEVELOPER=1, sun.java.launcher=SUN_STANDARD, user.country=US, sun.cpu.endian=little, user.language=en, env.XPC_SERVICE_NAME=0, ftp.nonProxyHosts=local|*.local|169.254/16|*.169.254/16, java.runtime.name=OpenJDK Runtime Environment, project.build.sourceEncoding=UTF-8, env.MAVEN_CMD_LINE_ARGS= -X -e compile, java.vendor.url.bug=https://bugreport.java.com/bugreport/, user.dir=/Users/janke/local/repos/antlrworks-jank, antlr.version=4.8-1, java.vm.version=13.0.2+8} [INFO] Using 'UTF-8' encoding to copy filtered resources. [DEBUG] resource with targetPath null directory /Users/janke/local/repos/antlrworks-jank/editor-completionext/src/main/resources excludes [] includes [] [INFO] skip non existing resourceDirectory /Users/janke/local/repos/antlrworks-jank/editor-completionext/src/main/resources [DEBUG] no use filter components [INFO] [INFO] --- maven-compiler-plugin:3.8.1:compile (default-compile) @ editor-completionext --- [DEBUG] Dependency collection stats: {ConflictMarker.analyzeTime=140339, ConflictMarker.markTime=84363, ConflictMarker.nodeCount=118, ConflictIdSorter.graphTime=56580, ConflictIdSorter.topsortTime=61120, ConflictIdSorter.conflictIdCount=45, ConflictIdSorter.conflictIdCycleCount=0, ConflictResolver.totalTime=908002, ConflictResolver.conflictItemCount=72, DefaultDependencyCollector.collectTime=81865106, DefaultDependencyCollector.transformTime=1289779} [DEBUG] org.apache.maven.plugins:maven-compiler-plugin:jar:3.8.1 [DEBUG] org.apache.maven:maven-plugin-api:jar:3.0:compile [DEBUG] org.apache.maven:maven-model:jar:3.0:compile [DEBUG] org.sonatype.sisu:sisu-inject-plexus:jar:1.4.2:compile [DEBUG] org.sonatype.sisu:sisu-inject-bean:jar:1.4.2:compile [DEBUG] org.sonatype.sisu:sisu-guice:jar:noaop:2.1.7:compile [DEBUG] org.apache.maven:maven-artifact:jar:3.0:compile [DEBUG] org.codehaus.plexus:plexus-utils:jar:2.0.4:compile [DEBUG] org.apache.maven:maven-core:jar:3.0:compile [DEBUG] org.apache.maven:maven-settings:jar:3.0:compile [DEBUG] org.apache.maven:maven-settings-builder:jar:3.0:compile [DEBUG] org.apache.maven:maven-repository-metadata:jar:3.0:compile [DEBUG] org.apache.maven:maven-model-builder:jar:3.0:compile [DEBUG] org.apache.maven:maven-aether-provider:jar:3.0:runtime [DEBUG] org.sonatype.aether:aether-impl:jar:1.7:compile [DEBUG] org.sonatype.aether:aether-spi:jar:1.7:compile [DEBUG] org.sonatype.aether:aether-api:jar:1.7:compile [DEBUG] org.sonatype.aether:aether-util:jar:1.7:compile [DEBUG] org.codehaus.plexus:plexus-interpolation:jar:1.14:compile [DEBUG] org.codehaus.plexus:plexus-classworlds:jar:2.2.3:compile [DEBUG] org.codehaus.plexus:plexus-component-annotations:jar:1.7.1:compile (version managed from default) [DEBUG] org.sonatype.plexus:plexus-sec-dispatcher:jar:1.3:compile [DEBUG] org.sonatype.plexus:plexus-cipher:jar:1.4:compile [DEBUG] org.apache.maven.shared:maven-shared-utils:jar:3.2.1:compile [DEBUG] commons-io:commons-io:jar:2.5:compile [DEBUG] org.apache.maven.shared:maven-shared-incremental:jar:1.1:compile [DEBUG] org.codehaus.plexus:plexus-java:jar:0.9.10:compile [DEBUG] org.ow2.asm:asm:jar:6.2:compile [DEBUG] com.thoughtworks.qdox:qdox:jar:2.0-M9:compile (version managed from default) [DEBUG] org.codehaus.plexus:plexus-compiler-api:jar:2.8.4:compile [DEBUG] org.codehaus.plexus:plexus-compiler-manager:jar:2.8.4:compile [DEBUG] org.codehaus.plexus:plexus-compiler-javac:jar:2.8.4:runtime [DEBUG] Created new class realm plugin>org.apache.maven.plugins:maven-compiler-plugin:3.8.1 [DEBUG] Importing foreign packages into class realm plugin>org.apache.maven.plugins:maven-compiler-plugin:3.8.1 [DEBUG] Imported: < maven.api [DEBUG] Populating class realm plugin>org.apache.maven.plugins:maven-compiler-plugin:3.8.1 [DEBUG] Included: org.apache.maven.plugins:maven-compiler-plugin:jar:3.8.1 [DEBUG] Included: org.sonatype.sisu:sisu-inject-bean:jar:1.4.2 [DEBUG] Included: org.sonatype.sisu:sisu-guice:jar:noaop:2.1.7 [DEBUG] Included: org.codehaus.plexus:plexus-utils:jar:2.0.4 [DEBUG] Included: org.sonatype.aether:aether-util:jar:1.7 [DEBUG] Included: org.codehaus.plexus:plexus-interpolation:jar:1.14 [DEBUG] Included: org.codehaus.plexus:plexus-component-annotations:jar:1.7.1 [DEBUG] Included: org.sonatype.plexus:plexus-sec-dispatcher:jar:1.3 [DEBUG] Included: org.sonatype.plexus:plexus-cipher:jar:1.4 [DEBUG] Included: org.apache.maven.shared:maven-shared-utils:jar:3.2.1 [DEBUG] Included: commons-io:commons-io:jar:2.5 [DEBUG] Included: org.apache.maven.shared:maven-shared-incremental:jar:1.1 [DEBUG] Included: org.codehaus.plexus:plexus-java:jar:0.9.10 [DEBUG] Included: org.ow2.asm:asm:jar:6.2 [DEBUG] Included: com.thoughtworks.qdox:qdox:jar:2.0-M9 [DEBUG] Included: org.codehaus.plexus:plexus-compiler-api:jar:2.8.4 [DEBUG] Included: org.codehaus.plexus:plexus-compiler-manager:jar:2.8.4 [DEBUG] Included: org.codehaus.plexus:plexus-compiler-javac:jar:2.8.4 [DEBUG] Configuring mojo org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile from plugin realm ClassRealm[plugin>org.apache.maven.plugins:maven-compiler-plugin:3.8.1, parent: jdk.internal.loader.ClassLoaders$AppClassLoader at 55054057] [DEBUG] Configuring mojo 'org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile' with basic configurator --> [DEBUG] (f) basedir = /Users/janke/local/repos/antlrworks-jank/editor-completionext [DEBUG] (f) buildDirectory = /Users/janke/local/repos/antlrworks-jank/editor-completionext/target [DEBUG] (f) compilePath = [/Users/janke/local/repos/antlrworks-jank/editor-completionext/target/classes, /Users/janke/.m2/repository/javax/annotation/javax.annotation-api/1.3.2/javax.annotation-api-1.3.2.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-api-annotations-common/RELEASE112/org-netbeans-api-annotations-common-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-spi-palette/RELEASE112/org-netbeans-spi-palette-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-awt/RELEASE112/org-openide-awt-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-dialogs/RELEASE112/org-openide-dialogs-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-explorer/RELEASE112/org-openide-explorer-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-swing-tabcontrol/RELEASE112/org-netbeans-swing-tabcontrol-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-filesystems/RELEASE112/org-openide-filesystems-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-loaders/RELEASE112/org-openide-loaders-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-api-scripting/RELEASE112/org-netbeans-api-scripting-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-api-templates/RELEASE112/org-netbeans-api-templates-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-modules/RELEASE112/org-openide-modules-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-nodes/RELEASE112/org-openide-nodes-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-text/RELEASE112/org-openide-text-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-util/RELEASE112/org-openide-util-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-util-lookup/RELEASE112/org-openide-util-lookup-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-windows/RELEASE112/org-openide-windows-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-util/RELEASE112/org-netbeans-modules-editor-util-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor/RELEASE112/org-netbeans-modules-editor-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-api-progress/RELEASE112/org-netbeans-api-progress-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-api-progress-nb/RELEASE112/org-netbeans-api-progress-nb-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-document/RELEASE112/org-netbeans-modules-editor-document-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-guards/RELEASE112/org-netbeans-modules-editor-guards-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-indent/RELEASE112/org-netbeans-modules-editor-indent-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-lib2/RELEASE112/org-netbeans-modules-editor-lib2-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-lexer/RELEASE112/org-netbeans-modules-lexer-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-actions/RELEASE112/org-openide-actions-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-filesystems-nb/RELEASE112/org-openide-filesystems-nb-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-fold/RELEASE112/org-netbeans-modules-editor-fold-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-settings-lib/RELEASE112/org-netbeans-modules-editor-settings-lib-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-util-ui/RELEASE112/org-openide-util-ui-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-lib/RELEASE112/org-netbeans-modules-editor-lib-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-mimelookup/RELEASE112/org-netbeans-modules-editor-mimelookup-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-settings/RELEASE112/org-netbeans-modules-editor-settings-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/modules/org-netbeans-modules-editor-settings-storage/RELEASE112/org-netbeans-modules-editor-settings-storage-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/modules/org-netbeans-modules-options-keymap/RELEASE112/org-netbeans-modules-options-keymap-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-options-api/RELEASE112/org-netbeans-modules-options-api-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-spi-quicksearch/RELEASE112/org-netbeans-spi-quicksearch-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-swing-outline/RELEASE112/org-netbeans-swing-outline-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-spi-editor-hints-projects/RELEASE112/org-netbeans-spi-editor-hints-projects-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-tools-storage/RELEASE112/org-netbeans-modules-editor-tools-storage-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-projectapi/RELEASE112/org-netbeans-modules-projectapi-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-projectuiapi/RELEASE112/org-netbeans-modules-projectuiapi-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-spi-editor-hints/RELEASE112/org-netbeans-spi-editor-hints-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-spi-navigator/RELEASE112/org-netbeans-spi-navigator-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-parsing-indexing/RELEASE112/org-netbeans-modules-parsing-indexing-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-api-java-classpath/RELEASE112/org-netbeans-api-java-classpath-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-libs-lucene/RELEASE112/org-netbeans-libs-lucene-RELEASE112.jar, /Users/janke/.m2/repository/org/apache/lucene/lucene-core/3.5.0/lucene-core-3.5.0.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-parsing-api/RELEASE112/org-netbeans-modules-parsing-api-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-projectuiapi-base/RELEASE112/org-netbeans-modules-projectuiapi-base-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-queries/RELEASE112/org-netbeans-modules-queries-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-spi-tasklist/RELEASE112/org-netbeans-spi-tasklist-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-sampler/RELEASE112/org-netbeans-modules-sampler-RELEASE112.jar, /Users/janke/.m2/repository/org/antlr/antlr4-runtime/4.8-1/antlr4-runtime-4.8-1.jar, /Users/janke/.m2/repository/org/antlr/stringtemplate/4.0.2/stringtemplate-4.0.2.jar, /Users/janke/.m2/repository/org/antlr/antlr-runtime/3.3/antlr-runtime-3.3.jar, /Users/janke/.m2/repository/org/antlr/antlr4/4.8-1/antlr4-4.8-1.jar, /Users/janke/.m2/repository/org/antlr/ST4/4.3/ST4-4.3.jar, /Users/janke/.m2/repository/org/abego/treelayout/org.abego.treelayout.core/1.0.3/org.abego.treelayout.core-1.0.3.jar, /Users/janke/.m2/repository/org/glassfish/javax.json/1.0.4/javax.json-1.0.4.jar, /Users/janke/.m2/repository/com/ibm/icu/icu4j/61.1/icu4j-61.1.jar] [DEBUG] (f) compileSourceRoots = [/Users/janke/local/repos/antlrworks-jank/editor-completionext/src/main/java] [DEBUG] (f) compilerId = javac [DEBUG] (f) debug = true [DEBUG] (f) encoding = UTF-8 [DEBUG] (f) failOnError = true [DEBUG] (f) failOnWarning = false [DEBUG] (f) forceJavacCompilerUse = false [DEBUG] (f) fork = false [DEBUG] (f) generatedSourcesDirectory = /Users/janke/local/repos/antlrworks-jank/editor-completionext/target/generated-sources/annotations [DEBUG] (f) mojoExecution = org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile {execution: default-compile} [DEBUG] (f) optimize = false [DEBUG] (f) outputDirectory = /Users/janke/local/repos/antlrworks-jank/editor-completionext/target/classes [DEBUG] (f) parameters = false [DEBUG] (f) project = MavenProject: net.apjanke.antlrworks-jank:editor-completionext:2.6.0-SNAPSHOT @ /Users/janke/local/repos/antlrworks-jank/editor-completionext/pom.xml [DEBUG] (f) projectArtifact = net.apjanke.antlrworks-jank:editor-completionext:jar:2.6.0-SNAPSHOT [DEBUG] (s) release = 13 [DEBUG] (f) session = org.apache.maven.execution.MavenSession at 58472096 [DEBUG] (f) showDeprecation = false [DEBUG] (f) showWarnings = false [DEBUG] (f) skipMultiThreadWarning = false [DEBUG] (f) source = 1.8 [DEBUG] (f) staleMillis = 0 [DEBUG] (s) target = 1.8 [DEBUG] (f) useIncrementalCompilation = true [DEBUG] (f) verbose = false [DEBUG] -- end configuration -- [DEBUG] Using compiler 'javac'. [DEBUG] Adding /Users/janke/local/repos/antlrworks-jank/editor-completionext/target/generated-sources/annotations to compile source roots: /Users/janke/local/repos/antlrworks-jank/editor-completionext/src/main/java [DEBUG] New compile source roots: /Users/janke/local/repos/antlrworks-jank/editor-completionext/src/main/java /Users/janke/local/repos/antlrworks-jank/editor-completionext/target/generated-sources/annotations [DEBUG] CompilerReuseStrategy: reuseCreated [DEBUG] useIncrementalCompilation enabled [INFO] Nothing to compile - all classes are up to date [INFO] [INFO] --------< net.apjanke.antlrworks-jank:editor-containingfolder >--------- [INFO] Building editor-containingfolder 2.6.0-SNAPSHOT [3/9] [INFO] --------------------------------[ jar ]--------------------------------- [DEBUG] Lifecycle default -> [validate, initialize, generate-sources, process-sources, generate-resources, process-resources, compile, process-classes, generate-test-sources, process-test-sources, generate-test-resources, process-test-resources, test-compile, process-test-classes, test, prepare-package, package, pre-integration-test, integration-test, post-integration-test, verify, install, deploy] [DEBUG] Lifecycle clean -> [pre-clean, clean, post-clean] [DEBUG] Lifecycle site -> [pre-site, site, post-site, site-deploy] [DEBUG] Lifecycle default -> [validate, initialize, generate-sources, process-sources, generate-resources, process-resources, compile, process-classes, generate-test-sources, process-test-sources, generate-test-resources, process-test-resources, test-compile, process-test-classes, test, prepare-package, package, pre-integration-test, integration-test, post-integration-test, verify, install, deploy] [DEBUG] Lifecycle clean -> [pre-clean, clean, post-clean] [DEBUG] Lifecycle site -> [pre-site, site, post-site, site-deploy] [DEBUG] Lifecycle default -> [validate, initialize, generate-sources, process-sources, generate-resources, process-resources, compile, process-classes, generate-test-sources, process-test-sources, generate-test-resources, process-test-resources, test-compile, process-test-classes, test, prepare-package, package, pre-integration-test, integration-test, post-integration-test, verify, install, deploy] [DEBUG] Lifecycle clean -> [pre-clean, clean, post-clean] [DEBUG] Lifecycle site -> [pre-site, site, post-site, site-deploy] [DEBUG] === PROJECT BUILD PLAN ================================================ [DEBUG] Project: net.apjanke.antlrworks-jank:editor-containingfolder:2.6.0-SNAPSHOT [DEBUG] Dependencies (collect): [] [DEBUG] Dependencies (resolve): [compile] [DEBUG] Repositories (dependencies): [netbeans (http://bits.netbeans.org/nexus/content/groups/netbeans/, default, releases+snapshots), atricore (http://repository.atricore.org/m2-release-repository/, default, releases+snapshots), central (https://repo.maven.apache.org/maven2, default, releases)] [DEBUG] Repositories (plugins) : [central (https://repo.maven.apache.org/maven2, default, releases)] [DEBUG] ----------------------------------------------------------------------- [DEBUG] Goal: org.apache.maven.plugins:maven-resources-plugin:2.6:resources (default-resources) [DEBUG] Style: Regular [DEBUG] Configuration: ${encoding} ${maven.resources.escapeString} ${maven.resources.escapeWindowsPaths} ${maven.resources.includeEmptyDirs} ${maven.resources.overwrite} ${maven.resources.supportMultiLineFiltering} [DEBUG] ----------------------------------------------------------------------- [DEBUG] Goal: org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile (default-compile) [DEBUG] Style: Regular [DEBUG] Configuration: ${maven.compiler.compilerId} ${maven.compiler.compilerReuseStrategy} ${maven.compiler.compilerVersion} ${maven.compiler.debug} ${maven.compiler.debuglevel} ${encoding} ${maven.compiler.executable} ${maven.compiler.failOnError} ${maven.compiler.failOnWarning} ${maven.compiler.forceJavacCompilerUse} ${maven.compiler.fork} ${maven.compiler.maxmem} ${maven.compiler.meminitial} ${maven.compiler.optimize} ${maven.compiler.parameters} 13 ${maven.compiler.showDeprecation} ${maven.compiler.showWarnings} ${maven.main.skip} ${maven.compiler.skipMultiThreadWarning} ${maven.compiler.source} ${lastModGranularityMs} ${maven.compiler.target} ${maven.compiler.useIncrementalCompilation} ${maven.compiler.verbose} [DEBUG] ======================================================================= [DEBUG] Dependency collection stats: {ConflictMarker.analyzeTime=12910, ConflictMarker.markTime=18742, ConflictMarker.nodeCount=3, ConflictIdSorter.graphTime=7404, ConflictIdSorter.topsortTime=11287, ConflictIdSorter.conflictIdCount=2, ConflictIdSorter.conflictIdCycleCount=0, ConflictResolver.totalTime=49178, ConflictResolver.conflictItemCount=2, DefaultDependencyCollector.collectTime=2223671, DefaultDependencyCollector.transformTime=120070} [DEBUG] net.apjanke.antlrworks-jank:editor-containingfolder:jar:2.6.0-SNAPSHOT [DEBUG] junit:junit:jar:4.13:test [DEBUG] org.hamcrest:hamcrest-core:jar:1.3:test [INFO] [INFO] --- maven-resources-plugin:2.6:resources (default-resources) @ editor-containingfolder --- [DEBUG] Configuring mojo org.apache.maven.plugins:maven-resources-plugin:2.6:resources from plugin realm ClassRealm[plugin>org.apache.maven.plugins:maven-resources-plugin:2.6, parent: jdk.internal.loader.ClassLoaders$AppClassLoader at 55054057] [DEBUG] Configuring mojo 'org.apache.maven.plugins:maven-resources-plugin:2.6:resources' with basic configurator --> [DEBUG] (f) buildFilters = [] [DEBUG] (f) encoding = UTF-8 [DEBUG] (f) escapeWindowsPaths = true [DEBUG] (s) includeEmptyDirs = false [DEBUG] (s) outputDirectory = /Users/janke/local/repos/antlrworks-jank/editor-containingfolder/target/classes [DEBUG] (s) overwrite = false [DEBUG] (f) project = MavenProject: net.apjanke.antlrworks-jank:editor-containingfolder:2.6.0-SNAPSHOT @ /Users/janke/local/repos/antlrworks-jank/editor-containingfolder/pom.xml [DEBUG] (s) resources = [Resource {targetPath: null, filtering: false, FileSet {directory: /Users/janke/local/repos/antlrworks-jank/editor-containingfolder/src/main/resources, PatternSet [includes: {}, excludes: {}]}}] [DEBUG] (f) session = org.apache.maven.execution.MavenSession at 58472096 [DEBUG] (f) supportMultiLineFiltering = false [DEBUG] (f) useBuildFilters = true [DEBUG] (s) useDefaultDelimiters = true [DEBUG] -- end configuration -- [DEBUG] properties used {env.TERM=xterm-256color, java.specification.version=13, sun.arch.data.model=64, env.CLICOLOR=1, java.vendor.url=https://openjdk.java.net/, env.COLORFGBG=12;8, env.GOPATH=/Users/janke/local/go-work, sun.boot.library.path=/usr/local/Cellar/openjdk/13.0.2+8_2/libexec/openjdk.jdk/Contents/Home/lib, sun.java.command=org.codehaus.plexus.classworlds.launcher.Launcher -X -e compile, jdk.debug=release, maven.version=3.6.3, java.specification.vendor=Oracle Corporation, java.version.date=2020-01-14, version=2.6.0-SNAPSHOT, java.home=/usr/local/Cellar/openjdk/13.0.2+8_2/libexec/openjdk.jdk/Contents/Home, env.GUIEDITOR=subl, java.vm.specification.vendor=Oracle Corporation, java.specification.name=Java Platform API Specification, sun.management.compiler=HotSpot 64-Bit Tiered Compilers, env.LC_TERMINAL_VERSION=3.3.9, java.runtime.version=13.0.2+8, env.LSCOLORS=gxxxdxdxdxexexdxdxgxgx, env.PATH=/usr/local/sbin:/usr/local/lib/ruby/gems/2.7.0/bin:/usr/local/lib/ruby/gems/2.6.0/bin:/usr/local/opt/ruby/bin:/Users/janke/bin:/usr/local/bin:/usr/local/sbin:/usr/local/lib/ruby/gems/2.7.0/bin:/usr/local/lib/ruby/gems/2.6.0/bin:/usr/local/opt/ruby/bin:/Users/janke/bin:/usr/local/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Applications/VMware Fusion.app/Contents/Public:/Library/TeX/texbin:/usr/local/MacGPG2/bin:/usr/local/share/dotnet:/opt/X11/bin:~/.dotnet/tools:/Library/Frameworks/Mono.framework/Versions/Current/Commands:/Users/janke/local/go-work/bin:/Users/janke/.rvm/bin:/Users/janke/local/go-work/bin:/Users/janke/.rvm/bin, env.LS_COLORS=di=36:so=33:pi=33:ex=33:bd=34:cd=34:su=33:sg=33:tw=36:ow=36:ln=00;04, file.encoding=UTF-8, env.HOMEBREW_EDITOR=subl, env.HISTCONTROL=ignoredups, env.SHLVL=2, java.io.tmpdir=/var/folders/_4/9mx5ryp52bb_z6drbcbrhwl40000gn/T/, java.version=13.0.2, java.vm.specification.name=Java Virtual Machine Specification, netbeans.version=RELEASE112, java.library.path=/Users/janke/Library/Java/Extensions:/Library/Java/Extensions:/Network/Library/Java/Extensions:/System/Library/Java/Extensions:/usr/lib/java:., java.vendor=N/A, classworlds.conf=/usr/local/Cellar/maven/3.6.3_1/libexec/bin/m2.conf, sun.io.unicode.encoding=UnicodeBig, env.LANG=en_US.UTF-8, env.HOMEBREW_SANDBOX=1, java.vm.specification.version=13, os.name=Mac OS X, env.DISPLAY=/private/tmp/com.apple.launchd.O2942FNRqP/org.macosforge.xquartz:0, release.username=apjanke, http.nonProxyHosts=local|*.local|169.254/16|*.169.254/16, maven.compiler.source=1.8, user.home=/Users/janke, env.XML_CATALOG_FILES=/usr/local/etc/xml/catalog, env.EDITOR=vi, brandingToken=antlrworks2jank, env.COLORTERM=truecolor, env.Apple_PubSub_Socket_Render=/private/tmp/com.apple.launchd.YiSqoN3EU9/Render, env.ITERM_SESSION_ID=w0t0p0:71DF3FA8-5482-4070-8BD4-354B2D5AA3BB, env.ITERM_PROFILE=Solarized - Dark - apj, path.separator=:, os.version=10.14.6, java.vm.name=OpenJDK 64-Bit Server VM, env.SHELL=/bin/zsh, gpg.executable=gpg2, env.HISTSIZE=32768, os.arch=x86_64, env.HISTFILESIZE=32768, maven.multiModuleProjectDirectory=/Users/janke/local/repos/antlrworks-jank, env.MAVEN_PROJECTBASEDIR=/Users/janke/local/repos/antlrworks-jank, java.vm.info=mixed mode, sharing, env.USER=janke, java.class.version=57.0, env.HOMEBREW_NO_AUTO_UPDATE=1, sun.jnu.encoding=UTF-8, env.HISTIGNORE=ls:ls *:cd:cd -:pwd:exit:date:* --help, env.VISUAL=subl -w, maven.build.version=Apache Maven 3.6.3 (cecedd343002696d0abb50b32b541b8a6ba2883f), maven.home=/usr/local/Cellar/maven/3.6.3_1/libexec, env.JAVA_HOME=/usr/local/opt/openjdk, env.LC_TERMINAL=iTerm2, file.separator=/, env.LESS=-R, java.vm.compressedOopsMode=Non-zero disjoint base, line.separator= , env.JAVA_MAIN_CLASS_12069=org.codehaus.plexus.classworlds.launcher.Launcher, env.TERM_PROGRAM_VERSION=3.3.9, user.name=janke, env.XPC_FLAGS=0x0, env.LOGNAME=janke, env.__CF_USER_TEXT_ENCODING=0x1F5:0x0:0x0, env.TERM_SESSION_ID=w0t0p0:71DF3FA8-5482-4070-8BD4-354B2D5AA3BB, env.SSH_AUTH_SOCK=/private/tmp/com.apple.launchd.9RGvwmJ5GD/Listeners, env.TERMINFO_DIRS=/Users/janke/.terminfo:/usr/local/share/terminfo:, maven.compiler.target=1.8, env.TMPDIR=/var/folders/_4/9mx5ryp52bb_z6drbcbrhwl40000gn/T/, library.jansi.path=/usr/local/Cellar/maven/3.6.3_1/libexec/lib/jansi-native, env.TERM_PROGRAM=iTerm.app, socksNonProxyHosts=local|*.local|169.254/16|*.169.254/16, env.OLDPWD=/Users/janke/local/repos/antlrworks-jank, env.PWD=/Users/janke/local/repos/antlrworks-jank, env.PAGER=less, java.class.path=/usr/local/Cellar/maven/3.6.3_1/libexec/boot/plexus-classworlds-2.6.0.jar, env.HOME=/Users/janke, java.vm.vendor=Oracle Corporation, gpg.keyname=24AF1EA5, maven.conf=/usr/local/Cellar/maven/3.6.3_1/libexec/conf, env.HOMEBREW_DEVELOPER=1, sun.java.launcher=SUN_STANDARD, user.country=US, sun.cpu.endian=little, user.language=en, env.XPC_SERVICE_NAME=0, ftp.nonProxyHosts=local|*.local|169.254/16|*.169.254/16, java.runtime.name=OpenJDK Runtime Environment, project.build.sourceEncoding=UTF-8, env.MAVEN_CMD_LINE_ARGS= -X -e compile, java.vendor.url.bug=https://bugreport.java.com/bugreport/, user.dir=/Users/janke/local/repos/antlrworks-jank, antlr.version=4.8-1, java.vm.version=13.0.2+8} [INFO] Using 'UTF-8' encoding to copy filtered resources. [DEBUG] resource with targetPath null directory /Users/janke/local/repos/antlrworks-jank/editor-containingfolder/src/main/resources excludes [] includes [] [INFO] skip non existing resourceDirectory /Users/janke/local/repos/antlrworks-jank/editor-containingfolder/src/main/resources [DEBUG] no use filter components [INFO] [INFO] --- maven-compiler-plugin:3.8.1:compile (default-compile) @ editor-containingfolder --- [DEBUG] Configuring mojo org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile from plugin realm ClassRealm[plugin>org.apache.maven.plugins:maven-compiler-plugin:3.8.1, parent: jdk.internal.loader.ClassLoaders$AppClassLoader at 55054057] [DEBUG] Configuring mojo 'org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile' with basic configurator --> [DEBUG] (f) basedir = /Users/janke/local/repos/antlrworks-jank/editor-containingfolder [DEBUG] (f) buildDirectory = /Users/janke/local/repos/antlrworks-jank/editor-containingfolder/target [DEBUG] (f) compilePath = [/Users/janke/local/repos/antlrworks-jank/editor-containingfolder/target/classes] [DEBUG] (f) compileSourceRoots = [/Users/janke/local/repos/antlrworks-jank/editor-containingfolder/src/main/java] [DEBUG] (f) compilerId = javac [DEBUG] (f) debug = true [DEBUG] (f) encoding = UTF-8 [DEBUG] (f) failOnError = true [DEBUG] (f) failOnWarning = false [DEBUG] (f) forceJavacCompilerUse = false [DEBUG] (f) fork = false [DEBUG] (f) generatedSourcesDirectory = /Users/janke/local/repos/antlrworks-jank/editor-containingfolder/target/generated-sources/annotations [DEBUG] (f) mojoExecution = org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile {execution: default-compile} [DEBUG] (f) optimize = false [DEBUG] (f) outputDirectory = /Users/janke/local/repos/antlrworks-jank/editor-containingfolder/target/classes [DEBUG] (f) parameters = false [DEBUG] (f) project = MavenProject: net.apjanke.antlrworks-jank:editor-containingfolder:2.6.0-SNAPSHOT @ /Users/janke/local/repos/antlrworks-jank/editor-containingfolder/pom.xml [DEBUG] (f) projectArtifact = net.apjanke.antlrworks-jank:editor-containingfolder:jar:2.6.0-SNAPSHOT [DEBUG] (s) release = 13 [DEBUG] (f) session = org.apache.maven.execution.MavenSession at 58472096 [DEBUG] (f) showDeprecation = false [DEBUG] (f) showWarnings = false [DEBUG] (f) skipMultiThreadWarning = false [DEBUG] (f) source = 1.8 [DEBUG] (f) staleMillis = 0 [DEBUG] (s) target = 1.8 [DEBUG] (f) useIncrementalCompilation = true [DEBUG] (f) verbose = false [DEBUG] -- end configuration -- [DEBUG] Using compiler 'javac'. [INFO] No sources to compile [INFO] [INFO] ----------< net.apjanke.antlrworks-jank:antlr-works-netbeans >---------- [INFO] Building antlr-works-netbeans 2.6.0-SNAPSHOT [4/9] [INFO] --------------------------------[ nbm ]--------------------------------- [DEBUG] Could not find metadata org.apache.maven.plugins:maven-resources-plugin/maven-metadata.xml in local (/Users/janke/.m2/repository) [DEBUG] Skipped remote request for org.apache.maven.plugins:maven-resources-plugin/maven-metadata.xml, locally cached metadata up-to-date. [DEBUG] Resolved plugin version for org.apache.maven.plugins:maven-resources-plugin to 3.1.0 from repository central (https://repo.maven.apache.org/maven2, default, releases) [DEBUG] Could not find metadata org.apache.maven.plugins:maven-surefire-plugin/maven-metadata.xml in local (/Users/janke/.m2/repository) [DEBUG] Skipped remote request for org.apache.maven.plugins:maven-surefire-plugin/maven-metadata.xml, locally cached metadata up-to-date. [DEBUG] Resolved plugin version for org.apache.maven.plugins:maven-surefire-plugin to 3.0.0-M4 from repository central (https://repo.maven.apache.org/maven2, default, releases) [DEBUG] Could not find metadata org.apache.maven.plugins:maven-install-plugin/maven-metadata.xml in local (/Users/janke/.m2/repository) [DEBUG] Skipped remote request for org.apache.maven.plugins:maven-install-plugin/maven-metadata.xml, locally cached metadata up-to-date. [DEBUG] Resolved plugin version for org.apache.maven.plugins:maven-install-plugin to 3.0.0-M1 from repository central (https://repo.maven.apache.org/maven2, default, releases) [DEBUG] Could not find metadata org.apache.maven.plugins:maven-deploy-plugin/maven-metadata.xml in local (/Users/janke/.m2/repository) [DEBUG] Skipped remote request for org.apache.maven.plugins:maven-deploy-plugin/maven-metadata.xml, locally cached metadata up-to-date. [DEBUG] Resolved plugin version for org.apache.maven.plugins:maven-deploy-plugin to 3.0.0-M1 from repository central (https://repo.maven.apache.org/maven2, default, releases) [DEBUG] Lifecycle default -> [validate, initialize, generate-sources, process-sources, generate-resources, process-resources, compile, process-classes, generate-test-sources, process-test-sources, generate-test-resources, process-test-resources, test-compile, process-test-classes, test, prepare-package, package, pre-integration-test, integration-test, post-integration-test, verify, install, deploy] [DEBUG] Lifecycle clean -> [pre-clean, clean, post-clean] [DEBUG] Lifecycle site -> [pre-site, site, post-site, site-deploy] [DEBUG] Lifecycle default -> [validate, initialize, generate-sources, process-sources, generate-resources, process-resources, compile, process-classes, generate-test-sources, process-test-sources, generate-test-resources, process-test-resources, test-compile, process-test-classes, test, prepare-package, package, pre-integration-test, integration-test, post-integration-test, verify, install, deploy] [DEBUG] Lifecycle clean -> [pre-clean, clean, post-clean] [DEBUG] Lifecycle site -> [pre-site, site, post-site, site-deploy] [DEBUG] Lifecycle default -> [validate, initialize, generate-sources, process-sources, generate-resources, process-resources, compile, process-classes, generate-test-sources, process-test-sources, generate-test-resources, process-test-resources, test-compile, process-test-classes, test, prepare-package, package, pre-integration-test, integration-test, post-integration-test, verify, install, deploy] [DEBUG] Lifecycle clean -> [pre-clean, clean, post-clean] [DEBUG] Lifecycle site -> [pre-site, site, post-site, site-deploy] [DEBUG] === PROJECT BUILD PLAN ================================================ [DEBUG] Project: net.apjanke.antlrworks-jank:antlr-works-netbeans:2.6.0-SNAPSHOT [DEBUG] Dependencies (collect): [] [DEBUG] Dependencies (resolve): [compile] [DEBUG] Repositories (dependencies): [netbeans (http://bits.netbeans.org/nexus/content/groups/netbeans/, default, releases+snapshots), atricore (http://repository.atricore.org/m2-release-repository/, default, releases+snapshots), central (https://repo.maven.apache.org/maven2, default, releases)] [DEBUG] Repositories (plugins) : [central (https://repo.maven.apache.org/maven2, default, releases)] [DEBUG] ----------------------------------------------------------------------- [DEBUG] Goal: org.apache.maven.plugins:maven-resources-plugin:3.1.0:resources (default-resources) [DEBUG] Style: Regular [DEBUG] Configuration: ${maven.resources.skip} [DEBUG] ----------------------------------------------------------------------- [DEBUG] Goal: org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile (default-compile) [DEBUG] Style: Regular [DEBUG] Configuration: ${maven.compiler.compilerId} ${maven.compiler.compilerReuseStrategy} ${maven.compiler.compilerVersion} ${maven.compiler.debug} ${maven.compiler.debuglevel} ${encoding} ${maven.compiler.executable} ${maven.compiler.failOnError} ${maven.compiler.failOnWarning} ${maven.compiler.forceJavacCompilerUse} ${maven.compiler.fork} ${maven.compiler.maxmem} ${maven.compiler.meminitial} ${maven.compiler.optimize} ${maven.compiler.parameters} 13 ${maven.compiler.showDeprecation} ${maven.compiler.showWarnings} ${maven.main.skip} ${maven.compiler.skipMultiThreadWarning} 1.8 ${lastModGranularityMs} 1.8 ${maven.compiler.useIncrementalCompilation} ${maven.compiler.verbose} [DEBUG] ======================================================================= [DEBUG] Dependency collection stats: {ConflictMarker.analyzeTime=390994, ConflictMarker.markTime=161696, ConflictMarker.nodeCount=557, ConflictIdSorter.graphTime=332838, ConflictIdSorter.topsortTime=510320, ConflictIdSorter.conflictIdCount=80, ConflictIdSorter.conflictIdCycleCount=1, ConflictResolver.totalTime=2224918, ConflictResolver.conflictItemCount=555, DefaultDependencyCollector.collectTime=5209833, DefaultDependencyCollector.transformTime=3723137} [DEBUG] net.apjanke.antlrworks-jank:antlr-works-netbeans:nbm:2.6.0-SNAPSHOT [DEBUG] javax.annotation:javax.annotation-api:jar:1.3.2:compile [DEBUG] org.netbeans.api:org-netbeans-api-annotations-common:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-spi-palette:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-awt:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-dialogs:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-explorer:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-swing-tabcontrol:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-filesystems:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-loaders:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-api-scripting:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-api-templates:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-modules:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-nodes:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-text:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-util:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-util-lookup:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-windows:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-editor:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-api-progress:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-api-progress-nb:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-editor-document:jar:RELEASE112:compile [DEBUG] org.netbeans.modules:org-netbeans-modules-editor-fold-nbui:jar:RELEASE112:runtime [DEBUG] org.netbeans.api:org-netbeans-modules-editor-guards:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-editor-indent:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-editor-lib2:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-lexer:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-actions:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-filesystems-nb:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-editor-util:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-editor-fold:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-editor-settings-lib:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-util-ui:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-editor-lib:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-editor-mimelookup:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-editor-settings:jar:RELEASE112:compile [DEBUG] org.netbeans.modules:org-netbeans-modules-editor-settings-storage:jar:RELEASE112:compile [DEBUG] org.netbeans.modules:org-netbeans-modules-options-keymap:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-options-api:jar:RELEASE112:compile [DEBUG] org.netbeans.modules:org-netbeans-core:jar:RELEASE112:runtime [DEBUG] org.netbeans.modules:org-netbeans-bootstrap:jar:RELEASE112:runtime [DEBUG] org.netbeans.api:org-netbeans-modules-keyring:jar:RELEASE112:runtime [DEBUG] org.netbeans.api:org-netbeans-modules-sampler:jar:RELEASE112:runtime [DEBUG] org.netbeans.api:org-netbeans-swing-plaf:jar:RELEASE112:runtime [DEBUG] org.netbeans.api:org-openide-io:jar:RELEASE112:runtime [DEBUG] org.netbeans.api:org-netbeans-api-intent:jar:RELEASE112:runtime [DEBUG] org.netbeans.api:org-netbeans-api-io:jar:RELEASE112:runtime [DEBUG] org.netbeans.modules:org-netbeans-core-startup:jar:RELEASE112:runtime [DEBUG] org.netbeans.api:org-netbeans-libs-asm:jar:RELEASE112:runtime [DEBUG] org.ow2.asm:asm-all:jar:5.0.1:runtime [DEBUG] org.netbeans.modules:org-netbeans-core-startup-base:jar:RELEASE112:runtime [DEBUG] org.netbeans.api:org-netbeans-spi-quicksearch:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-swing-outline:jar:RELEASE112:compile [DEBUG] org.netbeans.modules:org-netbeans-modules-options-editor:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-spi-editor-hints-projects:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-editor-tools-storage:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-projectapi:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-projectuiapi:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-spi-editor-hints:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-spi-navigator:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-parsing-indexing:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-api-java-classpath:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-libs-lucene:jar:RELEASE112:compile [DEBUG] org.apache.lucene:lucene-core:jar:3.5.0:compile [DEBUG] org.netbeans.api:org-netbeans-modules-parsing-api:jar:RELEASE112:compile [DEBUG] org.netbeans.modules:org-netbeans-modules-parsing-lucene:jar:RELEASE112:runtime [DEBUG] org.netbeans.modules:org-netbeans-modules-masterfs:jar:RELEASE112:runtime [DEBUG] org.netbeans.modules:org-netbeans-modules-project-indexingbridge:jar:RELEASE112:runtime [DEBUG] org.netbeans.api:org-netbeans-modules-projectuiapi-base:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-queries:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-spi-tasklist:jar:RELEASE112:compile [DEBUG] org.antlr:antlr4-runtime:jar:4.8-1:compile [DEBUG] org.antlr:stringtemplate:jar:4.0.2:compile [DEBUG] org.antlr:antlr-runtime:jar:3.3:compile [DEBUG] org.antlr:antlr4:jar:4.8-1:compile [DEBUG] org.antlr:ST4:jar:4.3:compile [DEBUG] org.abego.treelayout:org.abego.treelayout.core:jar:1.0.3:compile [DEBUG] org.glassfish:javax.json:jar:1.0.4:compile [DEBUG] com.ibm.icu:icu4j:jar:61.1:compile [DEBUG] junit:junit:jar:4.13:test [DEBUG] org.hamcrest:hamcrest-core:jar:1.3:test [INFO] [INFO] --- maven-resources-plugin:3.1.0:resources (default-resources) @ antlr-works-netbeans --- [DEBUG] Dependency collection stats: {ConflictMarker.analyzeTime=61558, ConflictMarker.markTime=35050, ConflictMarker.nodeCount=68, ConflictIdSorter.graphTime=48042, ConflictIdSorter.topsortTime=18915, ConflictIdSorter.conflictIdCount=28, ConflictIdSorter.conflictIdCycleCount=0, ConflictResolver.totalTime=468590, ConflictResolver.conflictItemCount=67, DefaultDependencyCollector.collectTime=14006058, DefaultDependencyCollector.transformTime=708699} [DEBUG] org.apache.maven.plugins:maven-resources-plugin:jar:3.1.0 [DEBUG] org.apache.maven:maven-plugin-api:jar:3.0:compile [DEBUG] org.apache.maven:maven-artifact:jar:3.0:compile [DEBUG] org.sonatype.sisu:sisu-inject-plexus:jar:1.4.2:compile [DEBUG] org.sonatype.sisu:sisu-inject-bean:jar:1.4.2:compile [DEBUG] org.sonatype.sisu:sisu-guice:jar:noaop:2.1.7:compile [DEBUG] org.apache.maven:maven-core:jar:3.0:compile [DEBUG] org.apache.maven:maven-settings:jar:3.0:compile [DEBUG] org.apache.maven:maven-settings-builder:jar:3.0:compile [DEBUG] org.apache.maven:maven-repository-metadata:jar:3.0:compile [DEBUG] org.apache.maven:maven-model-builder:jar:3.0:compile [DEBUG] org.apache.maven:maven-aether-provider:jar:3.0:runtime [DEBUG] org.sonatype.aether:aether-impl:jar:1.7:compile [DEBUG] org.sonatype.aether:aether-spi:jar:1.7:compile [DEBUG] org.sonatype.aether:aether-api:jar:1.7:compile [DEBUG] org.sonatype.aether:aether-util:jar:1.7:compile [DEBUG] org.codehaus.plexus:plexus-classworlds:jar:2.2.3:compile [DEBUG] org.codehaus.plexus:plexus-component-annotations:jar:1.7.1:compile (version managed from default) [DEBUG] org.sonatype.plexus:plexus-sec-dispatcher:jar:1.3:compile [DEBUG] org.sonatype.plexus:plexus-cipher:jar:1.4:compile [DEBUG] org.apache.maven:maven-model:jar:3.0:compile [DEBUG] org.codehaus.plexus:plexus-utils:jar:3.1.0:compile [DEBUG] org.apache.maven.shared:maven-filtering:jar:3.1.1:compile [DEBUG] org.apache.maven.shared:maven-shared-utils:jar:3.0.0:compile [DEBUG] com.google.code.findbugs:jsr305:jar:2.0.1:compile [DEBUG] org.sonatype.plexus:plexus-build-api:jar:0.0.7:compile [DEBUG] commons-io:commons-io:jar:2.5:compile [DEBUG] org.codehaus.plexus:plexus-interpolation:jar:1.24:compile [DEBUG] Created new class realm plugin>org.apache.maven.plugins:maven-resources-plugin:3.1.0 [DEBUG] Importing foreign packages into class realm plugin>org.apache.maven.plugins:maven-resources-plugin:3.1.0 [DEBUG] Imported: < project>net.apjanke.antlrworks-jank:antlr-works-netbeans:2.6.0-SNAPSHOT [DEBUG] Populating class realm plugin>org.apache.maven.plugins:maven-resources-plugin:3.1.0 [DEBUG] Included: org.apache.maven.plugins:maven-resources-plugin:jar:3.1.0 [DEBUG] Included: org.sonatype.sisu:sisu-inject-bean:jar:1.4.2 [DEBUG] Included: org.sonatype.sisu:sisu-guice:jar:noaop:2.1.7 [DEBUG] Included: org.sonatype.aether:aether-util:jar:1.7 [DEBUG] Included: org.codehaus.plexus:plexus-component-annotations:jar:1.7.1 [DEBUG] Included: org.sonatype.plexus:plexus-sec-dispatcher:jar:1.3 [DEBUG] Included: org.sonatype.plexus:plexus-cipher:jar:1.4 [DEBUG] Included: org.codehaus.plexus:plexus-utils:jar:3.1.0 [DEBUG] Included: org.apache.maven.shared:maven-filtering:jar:3.1.1 [DEBUG] Included: org.apache.maven.shared:maven-shared-utils:jar:3.0.0 [DEBUG] Included: com.google.code.findbugs:jsr305:jar:2.0.1 [DEBUG] Included: org.sonatype.plexus:plexus-build-api:jar:0.0.7 [DEBUG] Included: commons-io:commons-io:jar:2.5 [DEBUG] Included: org.codehaus.plexus:plexus-interpolation:jar:1.24 [DEBUG] Configuring mojo org.apache.maven.plugins:maven-resources-plugin:3.1.0:resources from plugin realm ClassRealm[plugin>org.apache.maven.plugins:maven-resources-plugin:3.1.0, parent: jdk.internal.loader.ClassLoaders$AppClassLoader at 55054057] [DEBUG] Configuring mojo 'org.apache.maven.plugins:maven-resources-plugin:3.1.0:resources' with basic configurator --> [DEBUG] (f) addDefaultExcludes = true [DEBUG] (f) buildFilters = [] [DEBUG] (f) encoding = UTF-8 [DEBUG] (f) escapeWindowsPaths = true [DEBUG] (f) fileNameFiltering = false [DEBUG] (s) includeEmptyDirs = false [DEBUG] (s) outputDirectory = /Users/janke/local/repos/antlrworks-jank/antlr-works-netbeans/target/classes [DEBUG] (s) overwrite = false [DEBUG] (f) project = MavenProject: net.apjanke.antlrworks-jank:antlr-works-netbeans:2.6.0-SNAPSHOT @ /Users/janke/local/repos/antlrworks-jank/antlr-works-netbeans/pom.xml [DEBUG] (s) resources = [Resource {targetPath: null, filtering: false, FileSet {directory: /Users/janke/local/repos/antlrworks-jank/antlr-works-netbeans/src/main/resources, PatternSet [includes: {}, excludes: {}]}}] [DEBUG] (f) session = org.apache.maven.execution.MavenSession at 58472096 [DEBUG] (f) skip = false [DEBUG] (f) supportMultiLineFiltering = false [DEBUG] (f) useBuildFilters = true [DEBUG] (s) useDefaultDelimiters = true [DEBUG] -- end configuration -- [DEBUG] properties used {env.TERM=xterm-256color, java.specification.version=13, sun.arch.data.model=64, env.CLICOLOR=1, java.vendor.url=https://openjdk.java.net/, env.COLORFGBG=12;8, env.GOPATH=/Users/janke/local/go-work, sun.boot.library.path=/usr/local/Cellar/openjdk/13.0.2+8_2/libexec/openjdk.jdk/Contents/Home/lib, sun.java.command=org.codehaus.plexus.classworlds.launcher.Launcher -X -e compile, jdk.debug=release, maven.version=3.6.3, java.specification.vendor=Oracle Corporation, java.version.date=2020-01-14, version=2.6.0-SNAPSHOT, java.home=/usr/local/Cellar/openjdk/13.0.2+8_2/libexec/openjdk.jdk/Contents/Home, env.GUIEDITOR=subl, java.vm.specification.vendor=Oracle Corporation, java.specification.name=Java Platform API Specification, sun.management.compiler=HotSpot 64-Bit Tiered Compilers, env.LC_TERMINAL_VERSION=3.3.9, java.runtime.version=13.0.2+8, env.LSCOLORS=gxxxdxdxdxexexdxdxgxgx, env.PATH=/usr/local/sbin:/usr/local/lib/ruby/gems/2.7.0/bin:/usr/local/lib/ruby/gems/2.6.0/bin:/usr/local/opt/ruby/bin:/Users/janke/bin:/usr/local/bin:/usr/local/sbin:/usr/local/lib/ruby/gems/2.7.0/bin:/usr/local/lib/ruby/gems/2.6.0/bin:/usr/local/opt/ruby/bin:/Users/janke/bin:/usr/local/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Applications/VMware Fusion.app/Contents/Public:/Library/TeX/texbin:/usr/local/MacGPG2/bin:/usr/local/share/dotnet:/opt/X11/bin:~/.dotnet/tools:/Library/Frameworks/Mono.framework/Versions/Current/Commands:/Users/janke/local/go-work/bin:/Users/janke/.rvm/bin:/Users/janke/local/go-work/bin:/Users/janke/.rvm/bin, env.LS_COLORS=di=36:so=33:pi=33:ex=33:bd=34:cd=34:su=33:sg=33:tw=36:ow=36:ln=00;04, file.encoding=UTF-8, env.HOMEBREW_EDITOR=subl, env.HISTCONTROL=ignoredups, env.SHLVL=2, project.baseUri=file:/Users/janke/local/repos/antlrworks-jank/antlr-works-netbeans/, java.io.tmpdir=/var/folders/_4/9mx5ryp52bb_z6drbcbrhwl40000gn/T/, java.version=13.0.2, java.vm.specification.name=Java Virtual Machine Specification, netbeans.version=RELEASE112, java.library.path=/Users/janke/Library/Java/Extensions:/Library/Java/Extensions:/Network/Library/Java/Extensions:/System/Library/Java/Extensions:/usr/lib/java:., java.vendor=N/A, classworlds.conf=/usr/local/Cellar/maven/3.6.3_1/libexec/bin/m2.conf, sun.io.unicode.encoding=UnicodeBig, env.LANG=en_US.UTF-8, env.HOMEBREW_SANDBOX=1, java.vm.specification.version=13, os.name=Mac OS X, env.DISPLAY=/private/tmp/com.apple.launchd.O2942FNRqP/org.macosforge.xquartz:0, release.username=apjanke, http.nonProxyHosts=local|*.local|169.254/16|*.169.254/16, maven.compiler.source=1.8, user.home=/Users/janke, env.XML_CATALOG_FILES=/usr/local/etc/xml/catalog, env.EDITOR=vi, maven.build.timestamp=2020-05-08T17:05:45Z, brandingToken=antlrworks2jank, env.COLORTERM=truecolor, env.Apple_PubSub_Socket_Render=/private/tmp/com.apple.launchd.YiSqoN3EU9/Render, env.ITERM_SESSION_ID=w0t0p0:71DF3FA8-5482-4070-8BD4-354B2D5AA3BB, env.ITERM_PROFILE=Solarized - Dark - apj, path.separator=:, os.version=10.14.6, java.vm.name=OpenJDK 64-Bit Server VM, env.SHELL=/bin/zsh, gpg.executable=gpg2, env.HISTSIZE=32768, os.arch=x86_64, env.HISTFILESIZE=32768, maven.multiModuleProjectDirectory=/Users/janke/local/repos/antlrworks-jank, env.MAVEN_PROJECTBASEDIR=/Users/janke/local/repos/antlrworks-jank, java.vm.info=mixed mode, sharing, env.USER=janke, java.class.version=57.0, env.HOMEBREW_NO_AUTO_UPDATE=1, sun.jnu.encoding=UTF-8, env.HISTIGNORE=ls:ls *:cd:cd -:pwd:exit:date:* --help, env.VISUAL=subl -w, maven.build.version=Apache Maven 3.6.3 (cecedd343002696d0abb50b32b541b8a6ba2883f), maven.home=/usr/local/Cellar/maven/3.6.3_1/libexec, env.JAVA_HOME=/usr/local/opt/openjdk, env.LC_TERMINAL=iTerm2, file.separator=/, env.LESS=-R, java.vm.compressedOopsMode=Non-zero disjoint base, line.separator= , env.JAVA_MAIN_CLASS_12069=org.codehaus.plexus.classworlds.launcher.Launcher, env.TERM_PROGRAM_VERSION=3.3.9, user.name=janke, env.XPC_FLAGS=0x0, env.LOGNAME=janke, env.__CF_USER_TEXT_ENCODING=0x1F5:0x0:0x0, env.TERM_SESSION_ID=w0t0p0:71DF3FA8-5482-4070-8BD4-354B2D5AA3BB, env.SSH_AUTH_SOCK=/private/tmp/com.apple.launchd.9RGvwmJ5GD/Listeners, env.TERMINFO_DIRS=/Users/janke/.terminfo:/usr/local/share/terminfo:, maven.compiler.target=1.8, env.TMPDIR=/var/folders/_4/9mx5ryp52bb_z6drbcbrhwl40000gn/T/, library.jansi.path=/usr/local/Cellar/maven/3.6.3_1/libexec/lib/jansi-native, env.TERM_PROGRAM=iTerm.app, socksNonProxyHosts=local|*.local|169.254/16|*.169.254/16, env.OLDPWD=/Users/janke/local/repos/antlrworks-jank, env.PWD=/Users/janke/local/repos/antlrworks-jank, env.PAGER=less, java.class.path=/usr/local/Cellar/maven/3.6.3_1/libexec/boot/plexus-classworlds-2.6.0.jar, env.HOME=/Users/janke, java.vm.vendor=Oracle Corporation, gpg.keyname=24AF1EA5, maven.conf=/usr/local/Cellar/maven/3.6.3_1/libexec/conf, env.HOMEBREW_DEVELOPER=1, sun.java.launcher=SUN_STANDARD, user.country=US, sun.cpu.endian=little, user.language=en, env.XPC_SERVICE_NAME=0, ftp.nonProxyHosts=local|*.local|169.254/16|*.169.254/16, java.runtime.name=OpenJDK Runtime Environment, project.build.sourceEncoding=UTF-8, env.MAVEN_CMD_LINE_ARGS= -X -e compile, java.vendor.url.bug=https://bugreport.java.com/bugreport/, user.dir=/Users/janke/local/repos/antlrworks-jank, antlr.version=4.8-1, java.vm.version=13.0.2+8} [INFO] Using 'UTF-8' encoding to copy filtered resources. [DEBUG] resource with targetPath null directory /Users/janke/local/repos/antlrworks-jank/antlr-works-netbeans/src/main/resources excludes [] includes [] [INFO] skip non existing resourceDirectory /Users/janke/local/repos/antlrworks-jank/antlr-works-netbeans/src/main/resources [DEBUG] no use filter components [INFO] [INFO] --- maven-compiler-plugin:3.8.1:compile (default-compile) @ antlr-works-netbeans --- [DEBUG] Dependency collection stats: {ConflictMarker.analyzeTime=83488, ConflictMarker.markTime=49276, ConflictMarker.nodeCount=118, ConflictIdSorter.graphTime=62384, ConflictIdSorter.topsortTime=26324, ConflictIdSorter.conflictIdCount=45, ConflictIdSorter.conflictIdCycleCount=0, ConflictResolver.totalTime=383176, ConflictResolver.conflictItemCount=72, DefaultDependencyCollector.collectTime=2802838, DefaultDependencyCollector.transformTime=625038} [DEBUG] org.apache.maven.plugins:maven-compiler-plugin:jar:3.8.1 [DEBUG] org.apache.maven:maven-plugin-api:jar:3.0:compile [DEBUG] org.apache.maven:maven-model:jar:3.0:compile [DEBUG] org.sonatype.sisu:sisu-inject-plexus:jar:1.4.2:compile [DEBUG] org.sonatype.sisu:sisu-inject-bean:jar:1.4.2:compile [DEBUG] org.sonatype.sisu:sisu-guice:jar:noaop:2.1.7:compile [DEBUG] org.apache.maven:maven-artifact:jar:3.0:compile [DEBUG] org.codehaus.plexus:plexus-utils:jar:2.0.4:compile [DEBUG] org.apache.maven:maven-core:jar:3.0:compile [DEBUG] org.apache.maven:maven-settings:jar:3.0:compile [DEBUG] org.apache.maven:maven-settings-builder:jar:3.0:compile [DEBUG] org.apache.maven:maven-repository-metadata:jar:3.0:compile [DEBUG] org.apache.maven:maven-model-builder:jar:3.0:compile [DEBUG] org.apache.maven:maven-aether-provider:jar:3.0:runtime [DEBUG] org.sonatype.aether:aether-impl:jar:1.7:compile [DEBUG] org.sonatype.aether:aether-spi:jar:1.7:compile [DEBUG] org.sonatype.aether:aether-api:jar:1.7:compile [DEBUG] org.sonatype.aether:aether-util:jar:1.7:compile [DEBUG] org.codehaus.plexus:plexus-interpolation:jar:1.14:compile [DEBUG] org.codehaus.plexus:plexus-classworlds:jar:2.2.3:compile [DEBUG] org.codehaus.plexus:plexus-component-annotations:jar:1.7.1:compile (version managed from default) [DEBUG] org.sonatype.plexus:plexus-sec-dispatcher:jar:1.3:compile [DEBUG] org.sonatype.plexus:plexus-cipher:jar:1.4:compile [DEBUG] org.apache.maven.shared:maven-shared-utils:jar:3.2.1:compile [DEBUG] commons-io:commons-io:jar:2.5:compile [DEBUG] org.apache.maven.shared:maven-shared-incremental:jar:1.1:compile [DEBUG] org.codehaus.plexus:plexus-java:jar:0.9.10:compile [DEBUG] org.ow2.asm:asm:jar:6.2:compile [DEBUG] com.thoughtworks.qdox:qdox:jar:2.0-M9:compile (version managed from default) [DEBUG] org.codehaus.plexus:plexus-compiler-api:jar:2.8.4:compile [DEBUG] org.codehaus.plexus:plexus-compiler-manager:jar:2.8.4:compile [DEBUG] org.codehaus.plexus:plexus-compiler-javac:jar:2.8.4:runtime [DEBUG] Created new class realm plugin>org.apache.maven.plugins:maven-compiler-plugin:3.8.1-1238127687 [DEBUG] Importing foreign packages into class realm plugin>org.apache.maven.plugins:maven-compiler-plugin:3.8.1-1238127687 [DEBUG] Imported: < project>net.apjanke.antlrworks-jank:antlr-works-netbeans:2.6.0-SNAPSHOT [DEBUG] Populating class realm plugin>org.apache.maven.plugins:maven-compiler-plugin:3.8.1-1238127687 [DEBUG] Included: org.apache.maven.plugins:maven-compiler-plugin:jar:3.8.1 [DEBUG] Included: org.sonatype.sisu:sisu-inject-bean:jar:1.4.2 [DEBUG] Included: org.sonatype.sisu:sisu-guice:jar:noaop:2.1.7 [DEBUG] Included: org.codehaus.plexus:plexus-utils:jar:2.0.4 [DEBUG] Included: org.sonatype.aether:aether-util:jar:1.7 [DEBUG] Included: org.codehaus.plexus:plexus-interpolation:jar:1.14 [DEBUG] Included: org.codehaus.plexus:plexus-component-annotations:jar:1.7.1 [DEBUG] Included: org.sonatype.plexus:plexus-sec-dispatcher:jar:1.3 [DEBUG] Included: org.sonatype.plexus:plexus-cipher:jar:1.4 [DEBUG] Included: org.apache.maven.shared:maven-shared-utils:jar:3.2.1 [DEBUG] Included: commons-io:commons-io:jar:2.5 [DEBUG] Included: org.apache.maven.shared:maven-shared-incremental:jar:1.1 [DEBUG] Included: org.codehaus.plexus:plexus-java:jar:0.9.10 [DEBUG] Included: org.ow2.asm:asm:jar:6.2 [DEBUG] Included: com.thoughtworks.qdox:qdox:jar:2.0-M9 [DEBUG] Included: org.codehaus.plexus:plexus-compiler-api:jar:2.8.4 [DEBUG] Included: org.codehaus.plexus:plexus-compiler-manager:jar:2.8.4 [DEBUG] Included: org.codehaus.plexus:plexus-compiler-javac:jar:2.8.4 [DEBUG] Configuring mojo org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile from plugin realm ClassRealm[plugin>org.apache.maven.plugins:maven-compiler-plugin:3.8.1-1238127687, parent: jdk.internal.loader.ClassLoaders$AppClassLoader at 55054057] [DEBUG] Configuring mojo 'org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile' with basic configurator --> [DEBUG] (f) basedir = /Users/janke/local/repos/antlrworks-jank/antlr-works-netbeans [DEBUG] (f) buildDirectory = /Users/janke/local/repos/antlrworks-jank/antlr-works-netbeans/target [DEBUG] (f) compilePath = [/Users/janke/local/repos/antlrworks-jank/antlr-works-netbeans/target/classes, /Users/janke/.m2/repository/javax/annotation/javax.annotation-api/1.3.2/javax.annotation-api-1.3.2.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-api-annotations-common/RELEASE112/org-netbeans-api-annotations-common-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-spi-palette/RELEASE112/org-netbeans-spi-palette-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-awt/RELEASE112/org-openide-awt-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-dialogs/RELEASE112/org-openide-dialogs-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-explorer/RELEASE112/org-openide-explorer-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-swing-tabcontrol/RELEASE112/org-netbeans-swing-tabcontrol-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-filesystems/RELEASE112/org-openide-filesystems-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-loaders/RELEASE112/org-openide-loaders-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-api-scripting/RELEASE112/org-netbeans-api-scripting-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-api-templates/RELEASE112/org-netbeans-api-templates-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-modules/RELEASE112/org-openide-modules-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-nodes/RELEASE112/org-openide-nodes-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-text/RELEASE112/org-openide-text-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-util/RELEASE112/org-openide-util-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-util-lookup/RELEASE112/org-openide-util-lookup-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-windows/RELEASE112/org-openide-windows-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor/RELEASE112/org-netbeans-modules-editor-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-api-progress/RELEASE112/org-netbeans-api-progress-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-api-progress-nb/RELEASE112/org-netbeans-api-progress-nb-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-document/RELEASE112/org-netbeans-modules-editor-document-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-guards/RELEASE112/org-netbeans-modules-editor-guards-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-indent/RELEASE112/org-netbeans-modules-editor-indent-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-lib2/RELEASE112/org-netbeans-modules-editor-lib2-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-lexer/RELEASE112/org-netbeans-modules-lexer-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-actions/RELEASE112/org-openide-actions-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-filesystems-nb/RELEASE112/org-openide-filesystems-nb-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-util/RELEASE112/org-netbeans-modules-editor-util-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-fold/RELEASE112/org-netbeans-modules-editor-fold-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-settings-lib/RELEASE112/org-netbeans-modules-editor-settings-lib-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-util-ui/RELEASE112/org-openide-util-ui-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-lib/RELEASE112/org-netbeans-modules-editor-lib-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-mimelookup/RELEASE112/org-netbeans-modules-editor-mimelookup-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-settings/RELEASE112/org-netbeans-modules-editor-settings-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/modules/org-netbeans-modules-editor-settings-storage/RELEASE112/org-netbeans-modules-editor-settings-storage-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/modules/org-netbeans-modules-options-keymap/RELEASE112/org-netbeans-modules-options-keymap-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-options-api/RELEASE112/org-netbeans-modules-options-api-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-spi-quicksearch/RELEASE112/org-netbeans-spi-quicksearch-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-swing-outline/RELEASE112/org-netbeans-swing-outline-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/modules/org-netbeans-modules-options-editor/RELEASE112/org-netbeans-modules-options-editor-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-spi-editor-hints-projects/RELEASE112/org-netbeans-spi-editor-hints-projects-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-tools-storage/RELEASE112/org-netbeans-modules-editor-tools-storage-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-projectapi/RELEASE112/org-netbeans-modules-projectapi-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-projectuiapi/RELEASE112/org-netbeans-modules-projectuiapi-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-spi-editor-hints/RELEASE112/org-netbeans-spi-editor-hints-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-spi-navigator/RELEASE112/org-netbeans-spi-navigator-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-parsing-indexing/RELEASE112/org-netbeans-modules-parsing-indexing-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-api-java-classpath/RELEASE112/org-netbeans-api-java-classpath-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-libs-lucene/RELEASE112/org-netbeans-libs-lucene-RELEASE112.jar, /Users/janke/.m2/repository/org/apache/lucene/lucene-core/3.5.0/lucene-core-3.5.0.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-parsing-api/RELEASE112/org-netbeans-modules-parsing-api-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-projectuiapi-base/RELEASE112/org-netbeans-modules-projectuiapi-base-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-queries/RELEASE112/org-netbeans-modules-queries-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-spi-tasklist/RELEASE112/org-netbeans-spi-tasklist-RELEASE112.jar, /Users/janke/.m2/repository/org/antlr/antlr4-runtime/4.8-1/antlr4-runtime-4.8-1.jar, /Users/janke/.m2/repository/org/antlr/stringtemplate/4.0.2/stringtemplate-4.0.2.jar, /Users/janke/.m2/repository/org/antlr/antlr-runtime/3.3/antlr-runtime-3.3.jar, /Users/janke/.m2/repository/org/antlr/antlr4/4.8-1/antlr4-4.8-1.jar, /Users/janke/.m2/repository/org/antlr/ST4/4.3/ST4-4.3.jar, /Users/janke/.m2/repository/org/abego/treelayout/org.abego.treelayout.core/1.0.3/org.abego.treelayout.core-1.0.3.jar, /Users/janke/.m2/repository/org/glassfish/javax.json/1.0.4/javax.json-1.0.4.jar, /Users/janke/.m2/repository/com/ibm/icu/icu4j/61.1/icu4j-61.1.jar] [DEBUG] (f) compileSourceRoots = [/Users/janke/local/repos/antlrworks-jank/antlr-works-netbeans/src/main/java] [DEBUG] (f) compilerId = javac [DEBUG] (f) debug = true [DEBUG] (f) encoding = UTF-8 [DEBUG] (f) failOnError = true [DEBUG] (f) failOnWarning = false [DEBUG] (f) forceJavacCompilerUse = false [DEBUG] (f) fork = false [DEBUG] (f) generatedSourcesDirectory = /Users/janke/local/repos/antlrworks-jank/antlr-works-netbeans/target/generated-sources/annotations [DEBUG] (f) mojoExecution = org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile {execution: default-compile} [DEBUG] (f) optimize = false [DEBUG] (f) outputDirectory = /Users/janke/local/repos/antlrworks-jank/antlr-works-netbeans/target/classes [DEBUG] (f) parameters = false [DEBUG] (f) project = MavenProject: net.apjanke.antlrworks-jank:antlr-works-netbeans:2.6.0-SNAPSHOT @ /Users/janke/local/repos/antlrworks-jank/antlr-works-netbeans/pom.xml [DEBUG] (f) projectArtifact = net.apjanke.antlrworks-jank:antlr-works-netbeans:nbm:2.6.0-SNAPSHOT [DEBUG] (s) release = 13 [DEBUG] (f) session = org.apache.maven.execution.MavenSession at 58472096 [DEBUG] (f) showDeprecation = false [DEBUG] (f) showWarnings = false [DEBUG] (f) skipMultiThreadWarning = false [DEBUG] (f) source = 1.8 [DEBUG] (f) staleMillis = 0 [DEBUG] (s) target = 1.8 [DEBUG] (f) useIncrementalCompilation = true [DEBUG] (f) verbose = false [DEBUG] -- end configuration -- [DEBUG] Using compiler 'javac'. [DEBUG] Adding /Users/janke/local/repos/antlrworks-jank/antlr-works-netbeans/target/generated-sources/annotations to compile source roots: /Users/janke/local/repos/antlrworks-jank/antlr-works-netbeans/src/main/java [DEBUG] New compile source roots: /Users/janke/local/repos/antlrworks-jank/antlr-works-netbeans/src/main/java /Users/janke/local/repos/antlrworks-jank/antlr-works-netbeans/target/generated-sources/annotations [DEBUG] CompilerReuseStrategy: reuseCreated [DEBUG] useIncrementalCompilation enabled [INFO] Nothing to compile - all classes are up to date [INFO] [INFO] -----------< net.apjanke.antlrworks-jank:tvl-editor-actions >----------- [INFO] Building tvl-editor-actions 2.6.0-SNAPSHOT [5/9] [INFO] --------------------------------[ jar ]--------------------------------- [DEBUG] Lifecycle default -> [validate, initialize, generate-sources, process-sources, generate-resources, process-resources, compile, process-classes, generate-test-sources, process-test-sources, generate-test-resources, process-test-resources, test-compile, process-test-classes, test, prepare-package, package, pre-integration-test, integration-test, post-integration-test, verify, install, deploy] [DEBUG] Lifecycle clean -> [pre-clean, clean, post-clean] [DEBUG] Lifecycle site -> [pre-site, site, post-site, site-deploy] [DEBUG] Lifecycle default -> [validate, initialize, generate-sources, process-sources, generate-resources, process-resources, compile, process-classes, generate-test-sources, process-test-sources, generate-test-resources, process-test-resources, test-compile, process-test-classes, test, prepare-package, package, pre-integration-test, integration-test, post-integration-test, verify, install, deploy] [DEBUG] Lifecycle clean -> [pre-clean, clean, post-clean] [DEBUG] Lifecycle site -> [pre-site, site, post-site, site-deploy] [DEBUG] Lifecycle default -> [validate, initialize, generate-sources, process-sources, generate-resources, process-resources, compile, process-classes, generate-test-sources, process-test-sources, generate-test-resources, process-test-resources, test-compile, process-test-classes, test, prepare-package, package, pre-integration-test, integration-test, post-integration-test, verify, install, deploy] [DEBUG] Lifecycle clean -> [pre-clean, clean, post-clean] [DEBUG] Lifecycle site -> [pre-site, site, post-site, site-deploy] [DEBUG] === PROJECT BUILD PLAN ================================================ [DEBUG] Project: net.apjanke.antlrworks-jank:tvl-editor-actions:2.6.0-SNAPSHOT [DEBUG] Dependencies (collect): [] [DEBUG] Dependencies (resolve): [compile] [DEBUG] Repositories (dependencies): [netbeans (http://bits.netbeans.org/nexus/content/groups/netbeans/, default, releases+snapshots), atricore (http://repository.atricore.org/m2-release-repository/, default, releases+snapshots), central (https://repo.maven.apache.org/maven2, default, releases)] [DEBUG] Repositories (plugins) : [central (https://repo.maven.apache.org/maven2, default, releases)] [DEBUG] ----------------------------------------------------------------------- [DEBUG] Goal: org.apache.maven.plugins:maven-resources-plugin:2.6:resources (default-resources) [DEBUG] Style: Regular [DEBUG] Configuration: ${encoding} ${maven.resources.escapeString} ${maven.resources.escapeWindowsPaths} ${maven.resources.includeEmptyDirs} ${maven.resources.overwrite} ${maven.resources.supportMultiLineFiltering} [DEBUG] ----------------------------------------------------------------------- [DEBUG] Goal: org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile (default-compile) [DEBUG] Style: Regular [DEBUG] Configuration: ${maven.compiler.compilerId} ${maven.compiler.compilerReuseStrategy} ${maven.compiler.compilerVersion} ${maven.compiler.debug} ${maven.compiler.debuglevel} ${encoding} ${maven.compiler.executable} ${maven.compiler.failOnError} ${maven.compiler.failOnWarning} ${maven.compiler.forceJavacCompilerUse} ${maven.compiler.fork} ${maven.compiler.maxmem} ${maven.compiler.meminitial} ${maven.compiler.optimize} ${maven.compiler.parameters} 13 ${maven.compiler.showDeprecation} ${maven.compiler.showWarnings} ${maven.main.skip} ${maven.compiler.skipMultiThreadWarning} 1.8 ${lastModGranularityMs} 1.8 ${maven.compiler.useIncrementalCompilation} ${maven.compiler.verbose} [DEBUG] ======================================================================= [DEBUG] Dependency collection stats: {ConflictMarker.analyzeTime=432093, ConflictMarker.markTime=178938, ConflictMarker.nodeCount=544, ConflictIdSorter.graphTime=409809, ConflictIdSorter.topsortTime=63934, ConflictIdSorter.conflictIdCount=72, ConflictIdSorter.conflictIdCycleCount=0, ConflictResolver.totalTime=1294367, ConflictResolver.conflictItemCount=543, DefaultDependencyCollector.collectTime=2318550, DefaultDependencyCollector.transformTime=2449198} [DEBUG] net.apjanke.antlrworks-jank:tvl-editor-actions:jar:2.6.0-SNAPSHOT [DEBUG] javax.annotation:javax.annotation-api:jar:1.3.2:compile [DEBUG] org.netbeans.api:org-netbeans-api-annotations-common:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-spi-palette:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-awt:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-dialogs:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-explorer:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-swing-tabcontrol:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-filesystems:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-loaders:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-api-scripting:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-api-templates:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-modules:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-nodes:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-text:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-util:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-util-lookup:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-windows:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-editor:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-api-progress:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-api-progress-nb:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-editor-document:jar:RELEASE112:compile [DEBUG] org.netbeans.modules:org-netbeans-modules-editor-fold-nbui:jar:RELEASE112:runtime [DEBUG] org.netbeans.api:org-netbeans-modules-editor-guards:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-editor-indent:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-editor-lib2:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-lexer:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-actions:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-filesystems-nb:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-editor-util:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-editor-fold:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-editor-settings-lib:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-util-ui:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-editor-lib:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-editor-mimelookup:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-editor-settings:jar:RELEASE112:compile [DEBUG] org.netbeans.modules:org-netbeans-modules-editor-settings-storage:jar:RELEASE112:compile [DEBUG] org.netbeans.modules:org-netbeans-modules-options-keymap:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-options-api:jar:RELEASE112:compile [DEBUG] org.netbeans.modules:org-netbeans-core:jar:RELEASE112:runtime [DEBUG] org.netbeans.modules:org-netbeans-bootstrap:jar:RELEASE112:runtime [DEBUG] org.netbeans.api:org-netbeans-modules-keyring:jar:RELEASE112:runtime [DEBUG] org.netbeans.api:org-netbeans-modules-sampler:jar:RELEASE112:runtime [DEBUG] org.netbeans.api:org-netbeans-swing-plaf:jar:RELEASE112:runtime [DEBUG] org.netbeans.api:org-openide-io:jar:RELEASE112:runtime [DEBUG] org.netbeans.api:org-netbeans-api-intent:jar:RELEASE112:runtime [DEBUG] org.netbeans.api:org-netbeans-api-io:jar:RELEASE112:runtime [DEBUG] org.netbeans.modules:org-netbeans-core-startup:jar:RELEASE112:runtime [DEBUG] org.netbeans.api:org-netbeans-libs-asm:jar:RELEASE112:runtime [DEBUG] org.ow2.asm:asm-all:jar:5.0.1:runtime [DEBUG] org.netbeans.modules:org-netbeans-core-startup-base:jar:RELEASE112:runtime [DEBUG] org.netbeans.api:org-netbeans-spi-quicksearch:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-swing-outline:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-spi-editor-hints-projects:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-editor-tools-storage:jar:RELEASE112:compile [DEBUG] org.netbeans.modules:org-netbeans-modules-options-editor:jar:RELEASE112:runtime [DEBUG] org.netbeans.api:org-netbeans-modules-projectapi:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-projectuiapi:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-spi-editor-hints:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-spi-navigator:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-parsing-indexing:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-api-java-classpath:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-libs-lucene:jar:RELEASE112:compile [DEBUG] org.apache.lucene:lucene-core:jar:3.5.0:compile [DEBUG] org.netbeans.api:org-netbeans-modules-parsing-api:jar:RELEASE112:compile [DEBUG] org.netbeans.modules:org-netbeans-modules-parsing-lucene:jar:RELEASE112:runtime [DEBUG] org.netbeans.modules:org-netbeans-modules-masterfs:jar:RELEASE112:runtime [DEBUG] org.netbeans.modules:org-netbeans-modules-project-indexingbridge:jar:RELEASE112:runtime [DEBUG] org.netbeans.api:org-netbeans-modules-projectuiapi-base:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-queries:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-spi-tasklist:jar:RELEASE112:compile [DEBUG] junit:junit:jar:4.13:test [DEBUG] org.hamcrest:hamcrest-core:jar:1.3:test [INFO] [INFO] --- maven-resources-plugin:2.6:resources (default-resources) @ tvl-editor-actions --- [DEBUG] Configuring mojo org.apache.maven.plugins:maven-resources-plugin:2.6:resources from plugin realm ClassRealm[plugin>org.apache.maven.plugins:maven-resources-plugin:2.6, parent: jdk.internal.loader.ClassLoaders$AppClassLoader at 55054057] [DEBUG] Configuring mojo 'org.apache.maven.plugins:maven-resources-plugin:2.6:resources' with basic configurator --> [DEBUG] (f) buildFilters = [] [DEBUG] (f) encoding = UTF-8 [DEBUG] (f) escapeWindowsPaths = true [DEBUG] (s) includeEmptyDirs = false [DEBUG] (s) outputDirectory = /Users/janke/local/repos/antlrworks-jank/tvl-editor-actions/target/classes [DEBUG] (s) overwrite = false [DEBUG] (f) project = MavenProject: net.apjanke.antlrworks-jank:tvl-editor-actions:2.6.0-SNAPSHOT @ /Users/janke/local/repos/antlrworks-jank/tvl-editor-actions/pom.xml [DEBUG] (s) resources = [Resource {targetPath: null, filtering: false, FileSet {directory: /Users/janke/local/repos/antlrworks-jank/tvl-editor-actions/src/main/resources, PatternSet [includes: {}, excludes: {}]}}] [DEBUG] (f) session = org.apache.maven.execution.MavenSession at 58472096 [DEBUG] (f) supportMultiLineFiltering = false [DEBUG] (f) useBuildFilters = true [DEBUG] (s) useDefaultDelimiters = true [DEBUG] -- end configuration -- [DEBUG] properties used {env.TERM=xterm-256color, java.specification.version=13, sun.arch.data.model=64, env.CLICOLOR=1, java.vendor.url=https://openjdk.java.net/, env.COLORFGBG=12;8, env.GOPATH=/Users/janke/local/go-work, sun.boot.library.path=/usr/local/Cellar/openjdk/13.0.2+8_2/libexec/openjdk.jdk/Contents/Home/lib, sun.java.command=org.codehaus.plexus.classworlds.launcher.Launcher -X -e compile, jdk.debug=release, maven.version=3.6.3, java.specification.vendor=Oracle Corporation, java.version.date=2020-01-14, version=2.6.0-SNAPSHOT, java.home=/usr/local/Cellar/openjdk/13.0.2+8_2/libexec/openjdk.jdk/Contents/Home, env.GUIEDITOR=subl, java.vm.specification.vendor=Oracle Corporation, java.specification.name=Java Platform API Specification, sun.management.compiler=HotSpot 64-Bit Tiered Compilers, env.LC_TERMINAL_VERSION=3.3.9, java.runtime.version=13.0.2+8, env.LSCOLORS=gxxxdxdxdxexexdxdxgxgx, env.PATH=/usr/local/sbin:/usr/local/lib/ruby/gems/2.7.0/bin:/usr/local/lib/ruby/gems/2.6.0/bin:/usr/local/opt/ruby/bin:/Users/janke/bin:/usr/local/bin:/usr/local/sbin:/usr/local/lib/ruby/gems/2.7.0/bin:/usr/local/lib/ruby/gems/2.6.0/bin:/usr/local/opt/ruby/bin:/Users/janke/bin:/usr/local/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Applications/VMware Fusion.app/Contents/Public:/Library/TeX/texbin:/usr/local/MacGPG2/bin:/usr/local/share/dotnet:/opt/X11/bin:~/.dotnet/tools:/Library/Frameworks/Mono.framework/Versions/Current/Commands:/Users/janke/local/go-work/bin:/Users/janke/.rvm/bin:/Users/janke/local/go-work/bin:/Users/janke/.rvm/bin, env.LS_COLORS=di=36:so=33:pi=33:ex=33:bd=34:cd=34:su=33:sg=33:tw=36:ow=36:ln=00;04, file.encoding=UTF-8, env.HOMEBREW_EDITOR=subl, env.HISTCONTROL=ignoredups, env.SHLVL=2, java.io.tmpdir=/var/folders/_4/9mx5ryp52bb_z6drbcbrhwl40000gn/T/, java.version=13.0.2, java.vm.specification.name=Java Virtual Machine Specification, netbeans.version=RELEASE112, java.library.path=/Users/janke/Library/Java/Extensions:/Library/Java/Extensions:/Network/Library/Java/Extensions:/System/Library/Java/Extensions:/usr/lib/java:., java.vendor=N/A, classworlds.conf=/usr/local/Cellar/maven/3.6.3_1/libexec/bin/m2.conf, sun.io.unicode.encoding=UnicodeBig, env.LANG=en_US.UTF-8, env.HOMEBREW_SANDBOX=1, java.vm.specification.version=13, os.name=Mac OS X, env.DISPLAY=/private/tmp/com.apple.launchd.O2942FNRqP/org.macosforge.xquartz:0, release.username=apjanke, http.nonProxyHosts=local|*.local|169.254/16|*.169.254/16, maven.compiler.source=1.8, user.home=/Users/janke, env.XML_CATALOG_FILES=/usr/local/etc/xml/catalog, env.EDITOR=vi, brandingToken=antlrworks2jank, env.COLORTERM=truecolor, env.Apple_PubSub_Socket_Render=/private/tmp/com.apple.launchd.YiSqoN3EU9/Render, env.ITERM_SESSION_ID=w0t0p0:71DF3FA8-5482-4070-8BD4-354B2D5AA3BB, env.ITERM_PROFILE=Solarized - Dark - apj, path.separator=:, os.version=10.14.6, java.vm.name=OpenJDK 64-Bit Server VM, env.SHELL=/bin/zsh, gpg.executable=gpg2, env.HISTSIZE=32768, os.arch=x86_64, env.HISTFILESIZE=32768, maven.multiModuleProjectDirectory=/Users/janke/local/repos/antlrworks-jank, env.MAVEN_PROJECTBASEDIR=/Users/janke/local/repos/antlrworks-jank, java.vm.info=mixed mode, sharing, env.USER=janke, java.class.version=57.0, env.HOMEBREW_NO_AUTO_UPDATE=1, sun.jnu.encoding=UTF-8, env.HISTIGNORE=ls:ls *:cd:cd -:pwd:exit:date:* --help, env.VISUAL=subl -w, maven.build.version=Apache Maven 3.6.3 (cecedd343002696d0abb50b32b541b8a6ba2883f), maven.home=/usr/local/Cellar/maven/3.6.3_1/libexec, env.JAVA_HOME=/usr/local/opt/openjdk, env.LC_TERMINAL=iTerm2, file.separator=/, env.LESS=-R, java.vm.compressedOopsMode=Non-zero disjoint base, line.separator= , env.JAVA_MAIN_CLASS_12069=org.codehaus.plexus.classworlds.launcher.Launcher, env.TERM_PROGRAM_VERSION=3.3.9, user.name=janke, env.XPC_FLAGS=0x0, env.LOGNAME=janke, env.__CF_USER_TEXT_ENCODING=0x1F5:0x0:0x0, env.TERM_SESSION_ID=w0t0p0:71DF3FA8-5482-4070-8BD4-354B2D5AA3BB, env.SSH_AUTH_SOCK=/private/tmp/com.apple.launchd.9RGvwmJ5GD/Listeners, env.TERMINFO_DIRS=/Users/janke/.terminfo:/usr/local/share/terminfo:, maven.compiler.target=1.8, env.TMPDIR=/var/folders/_4/9mx5ryp52bb_z6drbcbrhwl40000gn/T/, library.jansi.path=/usr/local/Cellar/maven/3.6.3_1/libexec/lib/jansi-native, env.TERM_PROGRAM=iTerm.app, socksNonProxyHosts=local|*.local|169.254/16|*.169.254/16, env.OLDPWD=/Users/janke/local/repos/antlrworks-jank, env.PWD=/Users/janke/local/repos/antlrworks-jank, env.PAGER=less, java.class.path=/usr/local/Cellar/maven/3.6.3_1/libexec/boot/plexus-classworlds-2.6.0.jar, env.HOME=/Users/janke, java.vm.vendor=Oracle Corporation, gpg.keyname=24AF1EA5, maven.conf=/usr/local/Cellar/maven/3.6.3_1/libexec/conf, env.HOMEBREW_DEVELOPER=1, sun.java.launcher=SUN_STANDARD, user.country=US, sun.cpu.endian=little, user.language=en, env.XPC_SERVICE_NAME=0, ftp.nonProxyHosts=local|*.local|169.254/16|*.169.254/16, java.runtime.name=OpenJDK Runtime Environment, project.build.sourceEncoding=UTF-8, env.MAVEN_CMD_LINE_ARGS= -X -e compile, java.vendor.url.bug=https://bugreport.java.com/bugreport/, user.dir=/Users/janke/local/repos/antlrworks-jank, antlr.version=4.8-1, java.vm.version=13.0.2+8} [INFO] Using 'UTF-8' encoding to copy filtered resources. [DEBUG] resource with targetPath null directory /Users/janke/local/repos/antlrworks-jank/tvl-editor-actions/src/main/resources excludes [] includes [] [INFO] skip non existing resourceDirectory /Users/janke/local/repos/antlrworks-jank/tvl-editor-actions/src/main/resources [DEBUG] no use filter components [INFO] [INFO] --- maven-compiler-plugin:3.8.1:compile (default-compile) @ tvl-editor-actions --- [DEBUG] Configuring mojo org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile from plugin realm ClassRealm[plugin>org.apache.maven.plugins:maven-compiler-plugin:3.8.1, parent: jdk.internal.loader.ClassLoaders$AppClassLoader at 55054057] [DEBUG] Configuring mojo 'org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile' with basic configurator --> [DEBUG] (f) basedir = /Users/janke/local/repos/antlrworks-jank/tvl-editor-actions [DEBUG] (f) buildDirectory = /Users/janke/local/repos/antlrworks-jank/tvl-editor-actions/target [DEBUG] (f) compilePath = [/Users/janke/local/repos/antlrworks-jank/tvl-editor-actions/target/classes, /Users/janke/.m2/repository/javax/annotation/javax.annotation-api/1.3.2/javax.annotation-api-1.3.2.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-api-annotations-common/RELEASE112/org-netbeans-api-annotations-common-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-spi-palette/RELEASE112/org-netbeans-spi-palette-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-awt/RELEASE112/org-openide-awt-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-dialogs/RELEASE112/org-openide-dialogs-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-explorer/RELEASE112/org-openide-explorer-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-swing-tabcontrol/RELEASE112/org-netbeans-swing-tabcontrol-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-filesystems/RELEASE112/org-openide-filesystems-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-loaders/RELEASE112/org-openide-loaders-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-api-scripting/RELEASE112/org-netbeans-api-scripting-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-api-templates/RELEASE112/org-netbeans-api-templates-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-modules/RELEASE112/org-openide-modules-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-nodes/RELEASE112/org-openide-nodes-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-text/RELEASE112/org-openide-text-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-util/RELEASE112/org-openide-util-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-util-lookup/RELEASE112/org-openide-util-lookup-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-windows/RELEASE112/org-openide-windows-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor/RELEASE112/org-netbeans-modules-editor-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-api-progress/RELEASE112/org-netbeans-api-progress-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-api-progress-nb/RELEASE112/org-netbeans-api-progress-nb-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-document/RELEASE112/org-netbeans-modules-editor-document-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-guards/RELEASE112/org-netbeans-modules-editor-guards-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-indent/RELEASE112/org-netbeans-modules-editor-indent-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-lib2/RELEASE112/org-netbeans-modules-editor-lib2-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-lexer/RELEASE112/org-netbeans-modules-lexer-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-actions/RELEASE112/org-openide-actions-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-filesystems-nb/RELEASE112/org-openide-filesystems-nb-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-util/RELEASE112/org-netbeans-modules-editor-util-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-fold/RELEASE112/org-netbeans-modules-editor-fold-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-settings-lib/RELEASE112/org-netbeans-modules-editor-settings-lib-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-util-ui/RELEASE112/org-openide-util-ui-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-lib/RELEASE112/org-netbeans-modules-editor-lib-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-mimelookup/RELEASE112/org-netbeans-modules-editor-mimelookup-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-settings/RELEASE112/org-netbeans-modules-editor-settings-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/modules/org-netbeans-modules-editor-settings-storage/RELEASE112/org-netbeans-modules-editor-settings-storage-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/modules/org-netbeans-modules-options-keymap/RELEASE112/org-netbeans-modules-options-keymap-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-options-api/RELEASE112/org-netbeans-modules-options-api-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-spi-quicksearch/RELEASE112/org-netbeans-spi-quicksearch-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-swing-outline/RELEASE112/org-netbeans-swing-outline-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-spi-editor-hints-projects/RELEASE112/org-netbeans-spi-editor-hints-projects-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-tools-storage/RELEASE112/org-netbeans-modules-editor-tools-storage-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-projectapi/RELEASE112/org-netbeans-modules-projectapi-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-projectuiapi/RELEASE112/org-netbeans-modules-projectuiapi-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-spi-editor-hints/RELEASE112/org-netbeans-spi-editor-hints-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-spi-navigator/RELEASE112/org-netbeans-spi-navigator-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-parsing-indexing/RELEASE112/org-netbeans-modules-parsing-indexing-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-api-java-classpath/RELEASE112/org-netbeans-api-java-classpath-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-libs-lucene/RELEASE112/org-netbeans-libs-lucene-RELEASE112.jar, /Users/janke/.m2/repository/org/apache/lucene/lucene-core/3.5.0/lucene-core-3.5.0.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-parsing-api/RELEASE112/org-netbeans-modules-parsing-api-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-projectuiapi-base/RELEASE112/org-netbeans-modules-projectuiapi-base-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-queries/RELEASE112/org-netbeans-modules-queries-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-spi-tasklist/RELEASE112/org-netbeans-spi-tasklist-RELEASE112.jar] [DEBUG] (f) compileSourceRoots = [/Users/janke/local/repos/antlrworks-jank/tvl-editor-actions/src/main/java] [DEBUG] (f) compilerId = javac [DEBUG] (f) debug = true [DEBUG] (f) encoding = UTF-8 [DEBUG] (f) failOnError = true [DEBUG] (f) failOnWarning = false [DEBUG] (f) forceJavacCompilerUse = false [DEBUG] (f) fork = false [DEBUG] (f) generatedSourcesDirectory = /Users/janke/local/repos/antlrworks-jank/tvl-editor-actions/target/generated-sources/annotations [DEBUG] (f) mojoExecution = org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile {execution: default-compile} [DEBUG] (f) optimize = false [DEBUG] (f) outputDirectory = /Users/janke/local/repos/antlrworks-jank/tvl-editor-actions/target/classes [DEBUG] (f) parameters = false [DEBUG] (f) project = MavenProject: net.apjanke.antlrworks-jank:tvl-editor-actions:2.6.0-SNAPSHOT @ /Users/janke/local/repos/antlrworks-jank/tvl-editor-actions/pom.xml [DEBUG] (f) projectArtifact = net.apjanke.antlrworks-jank:tvl-editor-actions:jar:2.6.0-SNAPSHOT [DEBUG] (s) release = 13 [DEBUG] (f) session = org.apache.maven.execution.MavenSession at 58472096 [DEBUG] (f) showDeprecation = false [DEBUG] (f) showWarnings = false [DEBUG] (f) skipMultiThreadWarning = false [DEBUG] (f) source = 1.8 [DEBUG] (f) staleMillis = 0 [DEBUG] (s) target = 1.8 [DEBUG] (f) useIncrementalCompilation = true [DEBUG] (f) verbose = false [DEBUG] -- end configuration -- [DEBUG] Using compiler 'javac'. [DEBUG] Adding /Users/janke/local/repos/antlrworks-jank/tvl-editor-actions/target/generated-sources/annotations to compile source roots: /Users/janke/local/repos/antlrworks-jank/tvl-editor-actions/src/main/java [DEBUG] New compile source roots: /Users/janke/local/repos/antlrworks-jank/tvl-editor-actions/src/main/java /Users/janke/local/repos/antlrworks-jank/tvl-editor-actions/target/generated-sources/annotations [DEBUG] CompilerReuseStrategy: reuseCreated [DEBUG] useIncrementalCompilation enabled [INFO] Nothing to compile - all classes are up to date [INFO] [INFO] ----------< net.apjanke.antlrworks-jank:works-editor-antlr4 >----------- [INFO] Building works-editor-antlr4 2.6.0-SNAPSHOT [6/9] [INFO] --------------------------------[ jar ]--------------------------------- [DEBUG] Lifecycle default -> [validate, initialize, generate-sources, process-sources, generate-resources, process-resources, compile, process-classes, generate-test-sources, process-test-sources, generate-test-resources, process-test-resources, test-compile, process-test-classes, test, prepare-package, package, pre-integration-test, integration-test, post-integration-test, verify, install, deploy] [DEBUG] Lifecycle clean -> [pre-clean, clean, post-clean] [DEBUG] Lifecycle site -> [pre-site, site, post-site, site-deploy] [DEBUG] Lifecycle default -> [validate, initialize, generate-sources, process-sources, generate-resources, process-resources, compile, process-classes, generate-test-sources, process-test-sources, generate-test-resources, process-test-resources, test-compile, process-test-classes, test, prepare-package, package, pre-integration-test, integration-test, post-integration-test, verify, install, deploy] [DEBUG] Lifecycle clean -> [pre-clean, clean, post-clean] [DEBUG] Lifecycle site -> [pre-site, site, post-site, site-deploy] [DEBUG] Lifecycle default -> [validate, initialize, generate-sources, process-sources, generate-resources, process-resources, compile, process-classes, generate-test-sources, process-test-sources, generate-test-resources, process-test-resources, test-compile, process-test-classes, test, prepare-package, package, pre-integration-test, integration-test, post-integration-test, verify, install, deploy] [DEBUG] Lifecycle clean -> [pre-clean, clean, post-clean] [DEBUG] Lifecycle site -> [pre-site, site, post-site, site-deploy] [DEBUG] === PROJECT BUILD PLAN ================================================ [DEBUG] Project: net.apjanke.antlrworks-jank:works-editor-antlr4:2.6.0-SNAPSHOT [DEBUG] Dependencies (collect): [] [DEBUG] Dependencies (resolve): [compile] [DEBUG] Repositories (dependencies): [netbeans (http://bits.netbeans.org/nexus/content/groups/netbeans/, default, releases+snapshots), atricore (http://repository.atricore.org/m2-release-repository/, default, releases+snapshots), central (https://repo.maven.apache.org/maven2, default, releases)] [DEBUG] Repositories (plugins) : [central (https://repo.maven.apache.org/maven2, default, releases)] [DEBUG] ----------------------------------------------------------------------- [DEBUG] Goal: org.apache.maven.plugins:maven-resources-plugin:2.6:resources (default-resources) [DEBUG] Style: Regular [DEBUG] Configuration: ${encoding} ${maven.resources.escapeString} ${maven.resources.escapeWindowsPaths} ${maven.resources.includeEmptyDirs} ${maven.resources.overwrite} ${maven.resources.supportMultiLineFiltering} [DEBUG] ----------------------------------------------------------------------- [DEBUG] Goal: org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile (default-compile) [DEBUG] Style: Regular [DEBUG] Configuration: ${maven.compiler.compilerId} ${maven.compiler.compilerReuseStrategy} ${maven.compiler.compilerVersion} ${maven.compiler.debug} ${maven.compiler.debuglevel} ${encoding} ${maven.compiler.executable} ${maven.compiler.failOnError} ${maven.compiler.failOnWarning} ${maven.compiler.forceJavacCompilerUse} ${maven.compiler.fork} ${maven.compiler.maxmem} ${maven.compiler.meminitial} ${maven.compiler.optimize} ${maven.compiler.parameters} 13 ${maven.compiler.showDeprecation} ${maven.compiler.showWarnings} ${maven.main.skip} ${maven.compiler.skipMultiThreadWarning} 1.8 ${lastModGranularityMs} 1.8 ${maven.compiler.useIncrementalCompilation} ${maven.compiler.verbose} [DEBUG] ======================================================================= [DEBUG] Dependency collection stats: {ConflictMarker.analyzeTime=312713, ConflictMarker.markTime=162329, ConflictMarker.nodeCount=597, ConflictIdSorter.graphTime=245522, ConflictIdSorter.topsortTime=186555, ConflictIdSorter.conflictIdCount=83, ConflictIdSorter.conflictIdCycleCount=1, ConflictResolver.totalTime=2113289, ConflictResolver.conflictItemCount=595, DefaultDependencyCollector.collectTime=3315084, DefaultDependencyCollector.transformTime=3157428} [DEBUG] net.apjanke.antlrworks-jank:works-editor-antlr4:jar:2.6.0-SNAPSHOT [DEBUG] net.apjanke.antlrworks-jank:editor-completionext:jar:2.6.0-SNAPSHOT:compile [DEBUG] javax.annotation:javax.annotation-api:jar:1.3.2:compile [DEBUG] org.netbeans.api:org-netbeans-api-annotations-common:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-spi-palette:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-awt:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-dialogs:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-explorer:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-swing-tabcontrol:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-filesystems:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-loaders:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-api-scripting:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-api-templates:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-modules:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-nodes:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-text:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-util:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-util-lookup:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-windows:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-editor-util:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-editor:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-api-progress:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-api-progress-nb:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-editor-document:jar:RELEASE112:compile [DEBUG] org.netbeans.modules:org-netbeans-modules-editor-fold-nbui:jar:RELEASE112:runtime [DEBUG] org.netbeans.api:org-netbeans-modules-editor-guards:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-editor-indent:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-editor-lib2:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-lexer:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-actions:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-filesystems-nb:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-editor-fold:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-editor-settings-lib:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-openide-util-ui:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-editor-lib:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-editor-mimelookup:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-editor-settings:jar:RELEASE112:compile [DEBUG] org.netbeans.modules:org-netbeans-modules-editor-settings-storage:jar:RELEASE112:compile [DEBUG] org.netbeans.modules:org-netbeans-modules-options-keymap:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-options-api:jar:RELEASE112:compile [DEBUG] org.netbeans.modules:org-netbeans-core:jar:RELEASE112:runtime [DEBUG] org.netbeans.modules:org-netbeans-bootstrap:jar:RELEASE112:runtime [DEBUG] org.netbeans.api:org-netbeans-modules-keyring:jar:RELEASE112:runtime [DEBUG] org.netbeans.api:org-netbeans-swing-plaf:jar:RELEASE112:runtime [DEBUG] org.netbeans.api:org-openide-io:jar:RELEASE112:runtime [DEBUG] org.netbeans.api:org-netbeans-api-intent:jar:RELEASE112:runtime [DEBUG] org.netbeans.api:org-netbeans-api-io:jar:RELEASE112:runtime [DEBUG] org.netbeans.modules:org-netbeans-core-startup:jar:RELEASE112:runtime [DEBUG] org.netbeans.api:org-netbeans-libs-asm:jar:RELEASE112:runtime [DEBUG] org.ow2.asm:asm-all:jar:5.0.1:runtime [DEBUG] org.netbeans.modules:org-netbeans-core-startup-base:jar:RELEASE112:runtime [DEBUG] org.netbeans.api:org-netbeans-spi-quicksearch:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-swing-outline:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-spi-editor-hints-projects:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-editor-tools-storage:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-projectapi:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-projectuiapi:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-spi-editor-hints:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-spi-navigator:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-parsing-indexing:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-api-java-classpath:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-libs-lucene:jar:RELEASE112:compile [DEBUG] org.apache.lucene:lucene-core:jar:3.5.0:compile [DEBUG] org.netbeans.api:org-netbeans-modules-parsing-api:jar:RELEASE112:compile [DEBUG] org.netbeans.modules:org-netbeans-modules-parsing-lucene:jar:RELEASE112:runtime [DEBUG] org.netbeans.modules:org-netbeans-modules-masterfs:jar:RELEASE112:runtime [DEBUG] org.netbeans.modules:org-netbeans-modules-project-indexingbridge:jar:RELEASE112:runtime [DEBUG] org.netbeans.api:org-netbeans-modules-projectuiapi-base:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-queries:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-spi-tasklist:jar:RELEASE112:compile [DEBUG] org.netbeans.api:org-netbeans-modules-sampler:jar:RELEASE112:compile [DEBUG] net.apjanke.antlrworks-jank:tvl-editor-actions:jar:2.6.0-SNAPSHOT:compile [DEBUG] net.apjanke.antlrworks-jank:antlr-works-netbeans:jar:2.6.0-SNAPSHOT:compile [DEBUG] org.netbeans.modules:org-netbeans-modules-options-editor:jar:RELEASE112:compile [DEBUG] org.antlr:antlr4-runtime:jar:4.8-1:compile [DEBUG] org.antlr:stringtemplate:jar:4.0.2:compile [DEBUG] org.antlr:antlr-runtime:jar:3.3:compile [DEBUG] org.antlr:antlr4:jar:4.8-1:compile [DEBUG] org.antlr:ST4:jar:4.3:compile [DEBUG] org.abego.treelayout:org.abego.treelayout.core:jar:1.0.3:compile [DEBUG] org.glassfish:javax.json:jar:1.0.4:compile [DEBUG] com.ibm.icu:icu4j:jar:61.1:compile [DEBUG] junit:junit:jar:4.13:test [DEBUG] org.hamcrest:hamcrest-core:jar:1.3:test [INFO] [INFO] --- maven-resources-plugin:2.6:resources (default-resources) @ works-editor-antlr4 --- [DEBUG] Configuring mojo org.apache.maven.plugins:maven-resources-plugin:2.6:resources from plugin realm ClassRealm[plugin>org.apache.maven.plugins:maven-resources-plugin:2.6, parent: jdk.internal.loader.ClassLoaders$AppClassLoader at 55054057] [DEBUG] Configuring mojo 'org.apache.maven.plugins:maven-resources-plugin:2.6:resources' with basic configurator --> [DEBUG] (f) buildFilters = [] [DEBUG] (f) encoding = UTF-8 [DEBUG] (f) escapeWindowsPaths = true [DEBUG] (s) includeEmptyDirs = false [DEBUG] (s) outputDirectory = /Users/janke/local/repos/antlrworks-jank/works-editor-antlr4/target/classes [DEBUG] (s) overwrite = false [DEBUG] (f) project = MavenProject: net.apjanke.antlrworks-jank:works-editor-antlr4:2.6.0-SNAPSHOT @ /Users/janke/local/repos/antlrworks-jank/works-editor-antlr4/pom.xml [DEBUG] (s) resources = [Resource {targetPath: null, filtering: false, FileSet {directory: /Users/janke/local/repos/antlrworks-jank/works-editor-antlr4/src/main/resources, PatternSet [includes: {}, excludes: {}]}}] [DEBUG] (f) session = org.apache.maven.execution.MavenSession at 58472096 [DEBUG] (f) supportMultiLineFiltering = false [DEBUG] (f) useBuildFilters = true [DEBUG] (s) useDefaultDelimiters = true [DEBUG] -- end configuration -- [DEBUG] properties used {env.TERM=xterm-256color, java.specification.version=13, sun.arch.data.model=64, env.CLICOLOR=1, java.vendor.url=https://openjdk.java.net/, env.COLORFGBG=12;8, env.GOPATH=/Users/janke/local/go-work, sun.boot.library.path=/usr/local/Cellar/openjdk/13.0.2+8_2/libexec/openjdk.jdk/Contents/Home/lib, sun.java.command=org.codehaus.plexus.classworlds.launcher.Launcher -X -e compile, jdk.debug=release, maven.version=3.6.3, java.specification.vendor=Oracle Corporation, java.version.date=2020-01-14, version=2.6.0-SNAPSHOT, java.home=/usr/local/Cellar/openjdk/13.0.2+8_2/libexec/openjdk.jdk/Contents/Home, env.GUIEDITOR=subl, java.vm.specification.vendor=Oracle Corporation, java.specification.name=Java Platform API Specification, sun.management.compiler=HotSpot 64-Bit Tiered Compilers, env.LC_TERMINAL_VERSION=3.3.9, java.runtime.version=13.0.2+8, env.LSCOLORS=gxxxdxdxdxexexdxdxgxgx, env.PATH=/usr/local/sbin:/usr/local/lib/ruby/gems/2.7.0/bin:/usr/local/lib/ruby/gems/2.6.0/bin:/usr/local/opt/ruby/bin:/Users/janke/bin:/usr/local/bin:/usr/local/sbin:/usr/local/lib/ruby/gems/2.7.0/bin:/usr/local/lib/ruby/gems/2.6.0/bin:/usr/local/opt/ruby/bin:/Users/janke/bin:/usr/local/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Applications/VMware Fusion.app/Contents/Public:/Library/TeX/texbin:/usr/local/MacGPG2/bin:/usr/local/share/dotnet:/opt/X11/bin:~/.dotnet/tools:/Library/Frameworks/Mono.framework/Versions/Current/Commands:/Users/janke/local/go-work/bin:/Users/janke/.rvm/bin:/Users/janke/local/go-work/bin:/Users/janke/.rvm/bin, env.LS_COLORS=di=36:so=33:pi=33:ex=33:bd=34:cd=34:su=33:sg=33:tw=36:ow=36:ln=00;04, file.encoding=UTF-8, env.HOMEBREW_EDITOR=subl, env.HISTCONTROL=ignoredups, env.SHLVL=2, java.io.tmpdir=/var/folders/_4/9mx5ryp52bb_z6drbcbrhwl40000gn/T/, java.version=13.0.2, java.vm.specification.name=Java Virtual Machine Specification, netbeans.version=RELEASE112, java.library.path=/Users/janke/Library/Java/Extensions:/Library/Java/Extensions:/Network/Library/Java/Extensions:/System/Library/Java/Extensions:/usr/lib/java:., java.vendor=N/A, classworlds.conf=/usr/local/Cellar/maven/3.6.3_1/libexec/bin/m2.conf, sun.io.unicode.encoding=UnicodeBig, env.LANG=en_US.UTF-8, env.HOMEBREW_SANDBOX=1, java.vm.specification.version=13, os.name=Mac OS X, env.DISPLAY=/private/tmp/com.apple.launchd.O2942FNRqP/org.macosforge.xquartz:0, release.username=apjanke, http.nonProxyHosts=local|*.local|169.254/16|*.169.254/16, maven.compiler.source=1.8, user.home=/Users/janke, env.XML_CATALOG_FILES=/usr/local/etc/xml/catalog, env.EDITOR=vi, brandingToken=antlrworks2jank, env.COLORTERM=truecolor, env.Apple_PubSub_Socket_Render=/private/tmp/com.apple.launchd.YiSqoN3EU9/Render, env.ITERM_SESSION_ID=w0t0p0:71DF3FA8-5482-4070-8BD4-354B2D5AA3BB, env.ITERM_PROFILE=Solarized - Dark - apj, path.separator=:, os.version=10.14.6, java.vm.name=OpenJDK 64-Bit Server VM, env.SHELL=/bin/zsh, gpg.executable=gpg2, env.HISTSIZE=32768, os.arch=x86_64, env.HISTFILESIZE=32768, maven.multiModuleProjectDirectory=/Users/janke/local/repos/antlrworks-jank, env.MAVEN_PROJECTBASEDIR=/Users/janke/local/repos/antlrworks-jank, java.vm.info=mixed mode, sharing, env.USER=janke, java.class.version=57.0, env.HOMEBREW_NO_AUTO_UPDATE=1, sun.jnu.encoding=UTF-8, env.HISTIGNORE=ls:ls *:cd:cd -:pwd:exit:date:* --help, env.VISUAL=subl -w, maven.build.version=Apache Maven 3.6.3 (cecedd343002696d0abb50b32b541b8a6ba2883f), maven.home=/usr/local/Cellar/maven/3.6.3_1/libexec, env.JAVA_HOME=/usr/local/opt/openjdk, env.LC_TERMINAL=iTerm2, file.separator=/, env.LESS=-R, java.vm.compressedOopsMode=Non-zero disjoint base, line.separator= , env.JAVA_MAIN_CLASS_12069=org.codehaus.plexus.classworlds.launcher.Launcher, env.TERM_PROGRAM_VERSION=3.3.9, user.name=janke, env.XPC_FLAGS=0x0, env.LOGNAME=janke, env.__CF_USER_TEXT_ENCODING=0x1F5:0x0:0x0, env.TERM_SESSION_ID=w0t0p0:71DF3FA8-5482-4070-8BD4-354B2D5AA3BB, env.SSH_AUTH_SOCK=/private/tmp/com.apple.launchd.9RGvwmJ5GD/Listeners, env.TERMINFO_DIRS=/Users/janke/.terminfo:/usr/local/share/terminfo:, maven.compiler.target=1.8, env.TMPDIR=/var/folders/_4/9mx5ryp52bb_z6drbcbrhwl40000gn/T/, library.jansi.path=/usr/local/Cellar/maven/3.6.3_1/libexec/lib/jansi-native, env.TERM_PROGRAM=iTerm.app, socksNonProxyHosts=local|*.local|169.254/16|*.169.254/16, env.OLDPWD=/Users/janke/local/repos/antlrworks-jank, env.PWD=/Users/janke/local/repos/antlrworks-jank, env.PAGER=less, java.class.path=/usr/local/Cellar/maven/3.6.3_1/libexec/boot/plexus-classworlds-2.6.0.jar, env.HOME=/Users/janke, java.vm.vendor=Oracle Corporation, gpg.keyname=24AF1EA5, maven.conf=/usr/local/Cellar/maven/3.6.3_1/libexec/conf, env.HOMEBREW_DEVELOPER=1, sun.java.launcher=SUN_STANDARD, user.country=US, sun.cpu.endian=little, user.language=en, env.XPC_SERVICE_NAME=0, ftp.nonProxyHosts=local|*.local|169.254/16|*.169.254/16, java.runtime.name=OpenJDK Runtime Environment, project.build.sourceEncoding=UTF-8, env.MAVEN_CMD_LINE_ARGS= -X -e compile, java.vendor.url.bug=https://bugreport.java.com/bugreport/, user.dir=/Users/janke/local/repos/antlrworks-jank, antlr.version=4.8-1, java.vm.version=13.0.2+8} [INFO] Using 'UTF-8' encoding to copy filtered resources. [DEBUG] resource with targetPath null directory /Users/janke/local/repos/antlrworks-jank/works-editor-antlr4/src/main/resources excludes [] includes [] [INFO] skip non existing resourceDirectory /Users/janke/local/repos/antlrworks-jank/works-editor-antlr4/src/main/resources [DEBUG] no use filter components [INFO] [INFO] --- maven-compiler-plugin:3.8.1:compile (default-compile) @ works-editor-antlr4 --- [DEBUG] Configuring mojo org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile from plugin realm ClassRealm[plugin>org.apache.maven.plugins:maven-compiler-plugin:3.8.1, parent: jdk.internal.loader.ClassLoaders$AppClassLoader at 55054057] [DEBUG] Configuring mojo 'org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile' with basic configurator --> [DEBUG] (f) basedir = /Users/janke/local/repos/antlrworks-jank/works-editor-antlr4 [DEBUG] (f) buildDirectory = /Users/janke/local/repos/antlrworks-jank/works-editor-antlr4/target [DEBUG] (f) compilePath = [/Users/janke/local/repos/antlrworks-jank/works-editor-antlr4/target/classes, /Users/janke/local/repos/antlrworks-jank/editor-completionext/target/classes, /Users/janke/.m2/repository/javax/annotation/javax.annotation-api/1.3.2/javax.annotation-api-1.3.2.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-api-annotations-common/RELEASE112/org-netbeans-api-annotations-common-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-spi-palette/RELEASE112/org-netbeans-spi-palette-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-awt/RELEASE112/org-openide-awt-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-dialogs/RELEASE112/org-openide-dialogs-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-explorer/RELEASE112/org-openide-explorer-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-swing-tabcontrol/RELEASE112/org-netbeans-swing-tabcontrol-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-filesystems/RELEASE112/org-openide-filesystems-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-loaders/RELEASE112/org-openide-loaders-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-api-scripting/RELEASE112/org-netbeans-api-scripting-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-api-templates/RELEASE112/org-netbeans-api-templates-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-modules/RELEASE112/org-openide-modules-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-nodes/RELEASE112/org-openide-nodes-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-text/RELEASE112/org-openide-text-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-util/RELEASE112/org-openide-util-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-util-lookup/RELEASE112/org-openide-util-lookup-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-windows/RELEASE112/org-openide-windows-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-util/RELEASE112/org-netbeans-modules-editor-util-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor/RELEASE112/org-netbeans-modules-editor-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-api-progress/RELEASE112/org-netbeans-api-progress-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-api-progress-nb/RELEASE112/org-netbeans-api-progress-nb-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-document/RELEASE112/org-netbeans-modules-editor-document-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-guards/RELEASE112/org-netbeans-modules-editor-guards-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-indent/RELEASE112/org-netbeans-modules-editor-indent-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-lib2/RELEASE112/org-netbeans-modules-editor-lib2-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-lexer/RELEASE112/org-netbeans-modules-lexer-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-actions/RELEASE112/org-openide-actions-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-filesystems-nb/RELEASE112/org-openide-filesystems-nb-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-fold/RELEASE112/org-netbeans-modules-editor-fold-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-settings-lib/RELEASE112/org-netbeans-modules-editor-settings-lib-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-openide-util-ui/RELEASE112/org-openide-util-ui-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-lib/RELEASE112/org-netbeans-modules-editor-lib-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-mimelookup/RELEASE112/org-netbeans-modules-editor-mimelookup-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-settings/RELEASE112/org-netbeans-modules-editor-settings-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/modules/org-netbeans-modules-editor-settings-storage/RELEASE112/org-netbeans-modules-editor-settings-storage-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/modules/org-netbeans-modules-options-keymap/RELEASE112/org-netbeans-modules-options-keymap-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-options-api/RELEASE112/org-netbeans-modules-options-api-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-spi-quicksearch/RELEASE112/org-netbeans-spi-quicksearch-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-swing-outline/RELEASE112/org-netbeans-swing-outline-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-spi-editor-hints-projects/RELEASE112/org-netbeans-spi-editor-hints-projects-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-tools-storage/RELEASE112/org-netbeans-modules-editor-tools-storage-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-projectapi/RELEASE112/org-netbeans-modules-projectapi-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-projectuiapi/RELEASE112/org-netbeans-modules-projectuiapi-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-spi-editor-hints/RELEASE112/org-netbeans-spi-editor-hints-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-spi-navigator/RELEASE112/org-netbeans-spi-navigator-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-parsing-indexing/RELEASE112/org-netbeans-modules-parsing-indexing-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-api-java-classpath/RELEASE112/org-netbeans-api-java-classpath-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-libs-lucene/RELEASE112/org-netbeans-libs-lucene-RELEASE112.jar, /Users/janke/.m2/repository/org/apache/lucene/lucene-core/3.5.0/lucene-core-3.5.0.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-parsing-api/RELEASE112/org-netbeans-modules-parsing-api-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-projectuiapi-base/RELEASE112/org-netbeans-modules-projectuiapi-base-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-queries/RELEASE112/org-netbeans-modules-queries-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-spi-tasklist/RELEASE112/org-netbeans-spi-tasklist-RELEASE112.jar, /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-sampler/RELEASE112/org-netbeans-modules-sampler-RELEASE112.jar, /Users/janke/local/repos/antlrworks-jank/tvl-editor-actions/target/classes, /Users/janke/local/repos/antlrworks-jank/antlr-works-netbeans/target/classes, /Users/janke/.m2/repository/org/netbeans/modules/org-netbeans-modules-options-editor/RELEASE112/org-netbeans-modules-options-editor-RELEASE112.jar, /Users/janke/.m2/repository/org/antlr/antlr4-runtime/4.8-1/antlr4-runtime-4.8-1.jar, /Users/janke/.m2/repository/org/antlr/stringtemplate/4.0.2/stringtemplate-4.0.2.jar, /Users/janke/.m2/repository/org/antlr/antlr-runtime/3.3/antlr-runtime-3.3.jar, /Users/janke/.m2/repository/org/antlr/antlr4/4.8-1/antlr4-4.8-1.jar, /Users/janke/.m2/repository/org/antlr/ST4/4.3/ST4-4.3.jar, /Users/janke/.m2/repository/org/abego/treelayout/org.abego.treelayout.core/1.0.3/org.abego.treelayout.core-1.0.3.jar, /Users/janke/.m2/repository/org/glassfish/javax.json/1.0.4/javax.json-1.0.4.jar, /Users/janke/.m2/repository/com/ibm/icu/icu4j/61.1/icu4j-61.1.jar] [DEBUG] (f) compileSourceRoots = [/Users/janke/local/repos/antlrworks-jank/works-editor-antlr4/src/main/java] [DEBUG] (f) compilerId = javac [DEBUG] (f) debug = true [DEBUG] (f) encoding = UTF-8 [DEBUG] (f) failOnError = true [DEBUG] (f) failOnWarning = false [DEBUG] (f) forceJavacCompilerUse = false [DEBUG] (f) fork = false [DEBUG] (f) generatedSourcesDirectory = /Users/janke/local/repos/antlrworks-jank/works-editor-antlr4/target/generated-sources/annotations [DEBUG] (f) mojoExecution = org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile {execution: default-compile} [DEBUG] (f) optimize = false [DEBUG] (f) outputDirectory = /Users/janke/local/repos/antlrworks-jank/works-editor-antlr4/target/classes [DEBUG] (f) parameters = false [DEBUG] (f) project = MavenProject: net.apjanke.antlrworks-jank:works-editor-antlr4:2.6.0-SNAPSHOT @ /Users/janke/local/repos/antlrworks-jank/works-editor-antlr4/pom.xml [DEBUG] (f) projectArtifact = net.apjanke.antlrworks-jank:works-editor-antlr4:jar:2.6.0-SNAPSHOT [DEBUG] (s) release = 13 [DEBUG] (f) session = org.apache.maven.execution.MavenSession at 58472096 [DEBUG] (f) showDeprecation = false [DEBUG] (f) showWarnings = false [DEBUG] (f) skipMultiThreadWarning = false [DEBUG] (f) source = 1.8 [DEBUG] (f) staleMillis = 0 [DEBUG] (s) target = 1.8 [DEBUG] (f) useIncrementalCompilation = true [DEBUG] (f) verbose = false [DEBUG] -- end configuration -- [DEBUG] Using compiler 'javac'. [DEBUG] Adding /Users/janke/local/repos/antlrworks-jank/works-editor-antlr4/target/generated-sources/annotations to compile source roots: /Users/janke/local/repos/antlrworks-jank/works-editor-antlr4/src/main/java [DEBUG] New compile source roots: /Users/janke/local/repos/antlrworks-jank/works-editor-antlr4/src/main/java /Users/janke/local/repos/antlrworks-jank/works-editor-antlr4/target/generated-sources/annotations [DEBUG] CompilerReuseStrategy: reuseCreated [DEBUG] useIncrementalCompilation enabled [INFO] Changes detected - recompiling the module! [DEBUG] Classpath: [DEBUG] /Users/janke/local/repos/antlrworks-jank/works-editor-antlr4/target/classes [DEBUG] /Users/janke/local/repos/antlrworks-jank/editor-completionext/target/classes [DEBUG] /Users/janke/.m2/repository/javax/annotation/javax.annotation-api/1.3.2/javax.annotation-api-1.3.2.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-api-annotations-common/RELEASE112/org-netbeans-api-annotations-common-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-spi-palette/RELEASE112/org-netbeans-spi-palette-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-openide-awt/RELEASE112/org-openide-awt-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-openide-dialogs/RELEASE112/org-openide-dialogs-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-openide-explorer/RELEASE112/org-openide-explorer-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-swing-tabcontrol/RELEASE112/org-netbeans-swing-tabcontrol-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-openide-filesystems/RELEASE112/org-openide-filesystems-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-openide-loaders/RELEASE112/org-openide-loaders-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-api-scripting/RELEASE112/org-netbeans-api-scripting-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-api-templates/RELEASE112/org-netbeans-api-templates-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-openide-modules/RELEASE112/org-openide-modules-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-openide-nodes/RELEASE112/org-openide-nodes-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-openide-text/RELEASE112/org-openide-text-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-openide-util/RELEASE112/org-openide-util-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-openide-util-lookup/RELEASE112/org-openide-util-lookup-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-openide-windows/RELEASE112/org-openide-windows-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-util/RELEASE112/org-netbeans-modules-editor-util-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor/RELEASE112/org-netbeans-modules-editor-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-api-progress/RELEASE112/org-netbeans-api-progress-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-api-progress-nb/RELEASE112/org-netbeans-api-progress-nb-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-document/RELEASE112/org-netbeans-modules-editor-document-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-guards/RELEASE112/org-netbeans-modules-editor-guards-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-indent/RELEASE112/org-netbeans-modules-editor-indent-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-lib2/RELEASE112/org-netbeans-modules-editor-lib2-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-lexer/RELEASE112/org-netbeans-modules-lexer-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-openide-actions/RELEASE112/org-openide-actions-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-openide-filesystems-nb/RELEASE112/org-openide-filesystems-nb-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-fold/RELEASE112/org-netbeans-modules-editor-fold-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-settings-lib/RELEASE112/org-netbeans-modules-editor-settings-lib-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-openide-util-ui/RELEASE112/org-openide-util-ui-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-lib/RELEASE112/org-netbeans-modules-editor-lib-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-mimelookup/RELEASE112/org-netbeans-modules-editor-mimelookup-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-settings/RELEASE112/org-netbeans-modules-editor-settings-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/modules/org-netbeans-modules-editor-settings-storage/RELEASE112/org-netbeans-modules-editor-settings-storage-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/modules/org-netbeans-modules-options-keymap/RELEASE112/org-netbeans-modules-options-keymap-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-options-api/RELEASE112/org-netbeans-modules-options-api-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-spi-quicksearch/RELEASE112/org-netbeans-spi-quicksearch-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-swing-outline/RELEASE112/org-netbeans-swing-outline-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-spi-editor-hints-projects/RELEASE112/org-netbeans-spi-editor-hints-projects-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-tools-storage/RELEASE112/org-netbeans-modules-editor-tools-storage-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-projectapi/RELEASE112/org-netbeans-modules-projectapi-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-projectuiapi/RELEASE112/org-netbeans-modules-projectuiapi-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-spi-editor-hints/RELEASE112/org-netbeans-spi-editor-hints-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-spi-navigator/RELEASE112/org-netbeans-spi-navigator-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-parsing-indexing/RELEASE112/org-netbeans-modules-parsing-indexing-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-api-java-classpath/RELEASE112/org-netbeans-api-java-classpath-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-libs-lucene/RELEASE112/org-netbeans-libs-lucene-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/apache/lucene/lucene-core/3.5.0/lucene-core-3.5.0.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-parsing-api/RELEASE112/org-netbeans-modules-parsing-api-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-projectuiapi-base/RELEASE112/org-netbeans-modules-projectuiapi-base-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-queries/RELEASE112/org-netbeans-modules-queries-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-spi-tasklist/RELEASE112/org-netbeans-spi-tasklist-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-sampler/RELEASE112/org-netbeans-modules-sampler-RELEASE112.jar [DEBUG] /Users/janke/local/repos/antlrworks-jank/tvl-editor-actions/target/classes [DEBUG] /Users/janke/local/repos/antlrworks-jank/antlr-works-netbeans/target/classes [DEBUG] /Users/janke/.m2/repository/org/netbeans/modules/org-netbeans-modules-options-editor/RELEASE112/org-netbeans-modules-options-editor-RELEASE112.jar [DEBUG] /Users/janke/.m2/repository/org/antlr/antlr4-runtime/4.8-1/antlr4-runtime-4.8-1.jar [DEBUG] /Users/janke/.m2/repository/org/antlr/stringtemplate/4.0.2/stringtemplate-4.0.2.jar [DEBUG] /Users/janke/.m2/repository/org/antlr/antlr-runtime/3.3/antlr-runtime-3.3.jar [DEBUG] /Users/janke/.m2/repository/org/antlr/antlr4/4.8-1/antlr4-4.8-1.jar [DEBUG] /Users/janke/.m2/repository/org/antlr/ST4/4.3/ST4-4.3.jar [DEBUG] /Users/janke/.m2/repository/org/abego/treelayout/org.abego.treelayout.core/1.0.3/org.abego.treelayout.core-1.0.3.jar [DEBUG] /Users/janke/.m2/repository/org/glassfish/javax.json/1.0.4/javax.json-1.0.4.jar [DEBUG] /Users/janke/.m2/repository/com/ibm/icu/icu4j/61.1/icu4j-61.1.jar [DEBUG] Source roots: [DEBUG] /Users/janke/local/repos/antlrworks-jank/works-editor-antlr4/src/main/java [DEBUG] /Users/janke/local/repos/antlrworks-jank/works-editor-antlr4/target/generated-sources/annotations [DEBUG] Command line options: [DEBUG] -d /Users/janke/local/repos/antlrworks-jank/works-editor-antlr4/target/classes -classpath /Users/janke/local/repos/antlrworks-jank/works-editor-antlr4/target/classes:/Users/janke/local/repos/antlrworks-jank/editor-completionext/target/classes:/Users/janke/.m2/repository/javax/annotation/javax.annotation-api/1.3.2/javax.annotation-api-1.3.2.jar:/Users/janke/.m2/repository/org/netbeans/api/org-netbeans-api-annotations-common/RELEASE112/org-netbeans-api-annotations-common-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-netbeans-spi-palette/RELEASE112/org-netbeans-spi-palette-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-openide-awt/RELEASE112/org-openide-awt-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-openide-dialogs/RELEASE112/org-openide-dialogs-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-openide-explorer/RELEASE112/org-openide-explorer-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-netbeans-swing-tabcontrol/RELEASE112/org-netbeans-swing-tabcontrol-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-openide-filesystems/RELEASE112/org-openide-filesystems-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-openide-loaders/RELEASE112/org-openide-loaders-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-netbeans-api-scripting/RELEASE112/org-netbeans-api-scripting-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-netbeans-api-templates/RELEASE112/org-netbeans-api-templates-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-openide-modules/RELEASE112/org-openide-modules-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-openide-nodes/RELEASE112/org-openide-nodes-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-openide-text/RELEASE112/org-openide-text-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-openide-util/RELEASE112/org-openide-util-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-openide-util-lookup/RELEASE112/org-openide-util-lookup-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-openide-windows/RELEASE112/org-openide-windows-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-util/RELEASE112/org-netbeans-modules-editor-util-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor/RELEASE112/org-netbeans-modules-editor-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-netbeans-api-progress/RELEASE112/org-netbeans-api-progress-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-netbeans-api-progress-nb/RELEASE112/org-netbeans-api-progress-nb-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-document/RELEASE112/org-netbeans-modules-editor-document-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-guards/RELEASE112/org-netbeans-modules-editor-guards-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-indent/RELEASE112/org-netbeans-modules-editor-indent-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-lib2/RELEASE112/org-netbeans-modules-editor-lib2-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-lexer/RELEASE112/org-netbeans-modules-lexer-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-openide-actions/RELEASE112/org-openide-actions-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-openide-filesystems-nb/RELEASE112/org-openide-filesystems-nb-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-fold/RELEASE112/org-netbeans-modules-editor-fold-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-settings-lib/RELEASE112/org-netbeans-modules-editor-settings-lib-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-openide-util-ui/RELEASE112/org-openide-util-ui-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-lib/RELEASE112/org-netbeans-modules-editor-lib-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-mimelookup/RELEASE112/org-netbeans-modules-editor-mimelookup-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-settings/RELEASE112/org-netbeans-modules-editor-settings-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/modules/org-netbeans-modules-editor-settings-storage/RELEASE112/org-netbeans-modules-editor-settings-storage-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/modules/org-netbeans-modules-options-keymap/RELEASE112/org-netbeans-modules-options-keymap-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-options-api/RELEASE112/org-netbeans-modules-options-api-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-netbeans-spi-quicksearch/RELEASE112/org-netbeans-spi-quicksearch-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-netbeans-swing-outline/RELEASE112/org-netbeans-swing-outline-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-netbeans-spi-editor-hints-projects/RELEASE112/org-netbeans-spi-editor-hints-projects-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-editor-tools-storage/RELEASE112/org-netbeans-modules-editor-tools-storage-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-projectapi/RELEASE112/org-netbeans-modules-projectapi-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-projectuiapi/RELEASE112/org-netbeans-modules-projectuiapi-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-netbeans-spi-editor-hints/RELEASE112/org-netbeans-spi-editor-hints-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-netbeans-spi-navigator/RELEASE112/org-netbeans-spi-navigator-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-parsing-indexing/RELEASE112/org-netbeans-modules-parsing-indexing-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-netbeans-api-java-classpath/RELEASE112/org-netbeans-api-java-classpath-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-netbeans-libs-lucene/RELEASE112/org-netbeans-libs-lucene-RELEASE112.jar:/Users/janke/.m2/repository/org/apache/lucene/lucene-core/3.5.0/lucene-core-3.5.0.jar:/Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-parsing-api/RELEASE112/org-netbeans-modules-parsing-api-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-projectuiapi-base/RELEASE112/org-netbeans-modules-projectuiapi-base-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-queries/RELEASE112/org-netbeans-modules-queries-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-netbeans-spi-tasklist/RELEASE112/org-netbeans-spi-tasklist-RELEASE112.jar:/Users/janke/.m2/repository/org/netbeans/api/org-netbeans-modules-sampler/RELEASE112/org-netbeans-modules-sampler-RELEASE112.jar:/Users/janke/local/repos/antlrworks-jank/tvl-editor-actions/target/classes:/Users/janke/local/repos/antlrworks-jank/antlr-works-netbeans/target/classes:/Users/janke/.m2/repository/org/netbeans/modules/org-netbeans-modules-options-editor/RELEASE112/org-netbeans-modules-options-editor-RELEASE112.jar:/Users/janke/.m2/repository/org/antlr/antlr4-runtime/4.8-1/antlr4-runtime-4.8-1.jar:/Users/janke/.m2/repository/org/antlr/stringtemplate/4.0.2/stringtemplate-4.0.2.jar:/Users/janke/.m2/repository/org/antlr/antlr-runtime/3.3/antlr-runtime-3.3.jar:/Users/janke/.m2/repository/org/antlr/antlr4/4.8-1/antlr4-4.8-1.jar:/Users/janke/.m2/repository/org/antlr/ST4/4.3/ST4-4.3.jar:/Users/janke/.m2/repository/org/abego/treelayout/org.abego.treelayout.core/1.0.3/org.abego.treelayout.core-1.0.3.jar:/Users/janke/.m2/repository/org/glassfish/javax.json/1.0.4/javax.json-1.0.4.jar:/Users/janke/.m2/repository/com/ibm/icu/icu4j/61.1/icu4j-61.1.jar: -sourcepath /Users/janke/local/repos/antlrworks-jank/works-editor-antlr4/src/main/java:/Users/janke/local/repos/antlrworks-jank/works-editor-antlr4/target/generated-sources/annotations: -s /Users/janke/local/repos/antlrworks-jank/works-editor-antlr4/target/generated-sources/annotations -g -nowarn --release 13 -encoding UTF-8 [DEBUG] incrementalBuildHelper#beforeRebuildExecution [INFO] Compiling 39 source files to /Users/janke/local/repos/antlrworks-jank/works-editor-antlr4/target/classes [INFO] ------------------------------------------------------------------------ [INFO] Reactor Summary for ANTLRWorks2-Jank 2.6.0-SNAPSHOT: [INFO] [INFO] ANTLRWorks2-Jank ................................... SUCCESS [ 0.011 s] [INFO] editor-completionext ............................... SUCCESS [ 0.541 s] [INFO] editor-containingfolder ............................ SUCCESS [ 0.082 s] [INFO] antlr-works-netbeans ............................... SUCCESS [ 0.342 s] [INFO] tvl-editor-actions ................................. SUCCESS [ 0.124 s] [INFO] works-editor-antlr4 ................................ FAILURE [ 1.385 s] [INFO] antlr-works-editor ................................. SKIPPED [INFO] tvl-editor-whitespace .............................. SKIPPED [INFO] works-editor-antlr3 ................................ SKIPPED [INFO] ------------------------------------------------------------------------ [INFO] BUILD FAILURE [INFO] ------------------------------------------------------------------------ [INFO] Total time: 3.090 s [INFO] Finished at: 2020-05-08T13:05:46-04:00 [INFO] ------------------------------------------------------------------------ --------------------------------------------------- constituent[0]: file:/usr/local/Cellar/maven/3.6.3_1/libexec/conf/logging/ constituent[1]: file:/usr/local/Cellar/maven/3.6.3_1/libexec/lib/maven-plugin-api-3.6.3.jar constituent[2]: file:/usr/local/Cellar/maven/3.6.3_1/libexec/lib/maven-compat-3.6.3.jar constituent[3]: file:/usr/local/Cellar/maven/3.6.3_1/libexec/lib/maven-resolver-util-1.4.1.jar constituent[4]: file:/usr/local/Cellar/maven/3.6.3_1/libexec/lib/plexus-component-annotations-2.1.0.jar constituent[5]: file:/usr/local/Cellar/maven/3.6.3_1/libexec/lib/maven-settings-builder-3.6.3.jar constituent[6]: file:/usr/local/Cellar/maven/3.6.3_1/libexec/lib/plexus-cipher-1.7.jar constituent[7]: file:/usr/local/Cellar/maven/3.6.3_1/libexec/lib/plexus-interpolation-1.25.jar constituent[8]: file:/usr/local/Cellar/maven/3.6.3_1/libexec/lib/maven-resolver-spi-1.4.1.jar constituent[9]: file:/usr/local/Cellar/maven/3.6.3_1/libexec/lib/guice-4.2.1-no_aop.jar constituent[10]: file:/usr/local/Cellar/maven/3.6.3_1/libexec/lib/maven-artifact-3.6.3.jar constituent[11]: file:/usr/local/Cellar/maven/3.6.3_1/libexec/lib/maven-resolver-provider-3.6.3.jar constituent[12]: file:/usr/local/Cellar/maven/3.6.3_1/libexec/lib/cdi-api-1.0.jar constituent[13]: file:/usr/local/Cellar/maven/3.6.3_1/libexec/lib/maven-slf4j-provider-3.6.3.jar constituent[14]: file:/usr/local/Cellar/maven/3.6.3_1/libexec/lib/plexus-utils-3.2.1.jar constituent[15]: file:/usr/local/Cellar/maven/3.6.3_1/libexec/lib/plexus-sec-dispatcher-1.4.jar constituent[16]: file:/usr/local/Cellar/maven/3.6.3_1/libexec/lib/maven-repository-metadata-3.6.3.jar constituent[17]: file:/usr/local/Cellar/maven/3.6.3_1/libexec/lib/commons-cli-1.4.jar constituent[18]: file:/usr/local/Cellar/maven/3.6.3_1/libexec/lib/maven-resolver-transport-wagon-1.4.1.jar constituent[19]: file:/usr/local/Cellar/maven/3.6.3_1/libexec/lib/commons-io-2.5.jar constituent[20]: file:/usr/local/Cellar/maven/3.6.3_1/libexec/lib/jansi-1.17.1.jar constituent[21]: file:/usr/local/Cellar/maven/3.6.3_1/libexec/lib/maven-model-builder-3.6.3.jar constituent[22]: file:/usr/local/Cellar/maven/3.6.3_1/libexec/lib/maven-embedder-3.6.3.jar constituent[23]: file:/usr/local/Cellar/maven/3.6.3_1/libexec/lib/wagon-file-3.3.4.jar constituent[24]: file:/usr/local/Cellar/maven/3.6.3_1/libexec/lib/org.eclipse.sisu.inject-0.3.4.jar constituent[25]: file:/usr/local/Cellar/maven/3.6.3_1/libexec/lib/maven-resolver-connector-basic-1.4.1.jar constituent[26]: file:/usr/local/Cellar/maven/3.6.3_1/libexec/lib/maven-settings-3.6.3.jar constituent[27]: file:/usr/local/Cellar/maven/3.6.3_1/libexec/lib/maven-model-3.6.3.jar constituent[28]: file:/usr/local/Cellar/maven/3.6.3_1/libexec/lib/maven-resolver-api-1.4.1.jar constituent[29]: file:/usr/local/Cellar/maven/3.6.3_1/libexec/lib/jcl-over-slf4j-1.7.29.jar constituent[30]: file:/usr/local/Cellar/maven/3.6.3_1/libexec/lib/wagon-http-3.3.4-shaded.jar constituent[31]: file:/usr/local/Cellar/maven/3.6.3_1/libexec/lib/org.eclipse.sisu.plexus-0.3.4.jar constituent[32]: file:/usr/local/Cellar/maven/3.6.3_1/libexec/lib/slf4j-api-1.7.29.jar constituent[33]: file:/usr/local/Cellar/maven/3.6.3_1/libexec/lib/maven-builder-support-3.6.3.jar constituent[34]: file:/usr/local/Cellar/maven/3.6.3_1/libexec/lib/jsoup-1.12.1.jar constituent[35]: file:/usr/local/Cellar/maven/3.6.3_1/libexec/lib/wagon-provider-api-3.3.4.jar constituent[36]: file:/usr/local/Cellar/maven/3.6.3_1/libexec/lib/maven-shared-utils-3.2.1.jar constituent[37]: file:/usr/local/Cellar/maven/3.6.3_1/libexec/lib/maven-resolver-impl-1.4.1.jar constituent[38]: file:/usr/local/Cellar/maven/3.6.3_1/libexec/lib/maven-core-3.6.3.jar constituent[39]: file:/usr/local/Cellar/maven/3.6.3_1/libexec/lib/javax.inject-1.jar constituent[40]: file:/usr/local/Cellar/maven/3.6.3_1/libexec/lib/commons-lang3-3.8.1.jar constituent[41]: file:/usr/local/Cellar/maven/3.6.3_1/libexec/lib/guava-25.1-android.jar constituent[42]: file:/usr/local/Cellar/maven/3.6.3_1/libexec/lib/jsr250-api-1.0.jar --------------------------------------------------- Exception in thread "main" java.lang.AssertionError at jdk.compiler/com.sun.tools.javac.util.Assert.error(Assert.java:155) at jdk.compiler/com.sun.tools.javac.util.Assert.check(Assert.java:46) at jdk.compiler/com.sun.tools.javac.comp.Modules.enter(Modules.java:247) at jdk.compiler/com.sun.tools.javac.main.JavaCompiler.readSourceFile(JavaCompiler.java:836) at jdk.compiler/com.sun.tools.javac.processing.JavacProcessingEnvironment$ImplicitCompleter.complete(JavacProcessingEnvironment.java:1576) at jdk.compiler/com.sun.tools.javac.code.Symbol.complete(Symbol.java:657) at jdk.compiler/com.sun.tools.javac.code.Symbol$ClassSymbol.complete(Symbol.java:1356) at jdk.compiler/com.sun.tools.javac.code.Type$ClassType.complete(Type.java:1157) at jdk.compiler/com.sun.tools.javac.code.Type$ClassType.getTypeArguments(Type.java:1083) at jdk.compiler/com.sun.tools.javac.code.Printer.visitClassType(Printer.java:237) at jdk.compiler/com.sun.tools.javac.code.Printer.visitClassType(Printer.java:52) at jdk.compiler/com.sun.tools.javac.code.Type$ClassType.accept(Type.java:1010) at jdk.compiler/com.sun.tools.javac.code.Printer.visit(Printer.java:136) at jdk.compiler/com.sun.tools.javac.util.AbstractDiagnosticFormatter.formatArgument(AbstractDiagnosticFormatter.java:199) at jdk.compiler/com.sun.tools.javac.util.AbstractDiagnosticFormatter.formatArguments(AbstractDiagnosticFormatter.java:167) at jdk.compiler/com.sun.tools.javac.util.BasicDiagnosticFormatter.formatMessage(BasicDiagnosticFormatter.java:111) at jdk.compiler/com.sun.tools.javac.util.BasicDiagnosticFormatter.formatMessage(BasicDiagnosticFormatter.java:67) at jdk.compiler/com.sun.tools.javac.util.AbstractDiagnosticFormatter.formatArgument(AbstractDiagnosticFormatter.java:185) at jdk.compiler/com.sun.tools.javac.util.AbstractDiagnosticFormatter.formatArguments(AbstractDiagnosticFormatter.java:167) at jdk.compiler/com.sun.tools.javac.util.BasicDiagnosticFormatter.formatMessage(BasicDiagnosticFormatter.java:111) at jdk.compiler/com.sun.tools.javac.util.BasicDiagnosticFormatter.formatMessage(BasicDiagnosticFormatter.java:67) at jdk.compiler/com.sun.tools.javac.util.JCDiagnostic.getMessage(JCDiagnostic.java:788) at jdk.compiler/com.sun.tools.javac.api.ClientCodeWrapper$DiagnosticSourceUnwrapper.getMessage(ClientCodeWrapper.java:835) at org.codehaus.plexus.compiler.javac.JavaxToolsCompiler.compileInProcess(JavaxToolsCompiler.java:131) at org.codehaus.plexus.compiler.javac.JavacCompiler.performCompile(JavacCompiler.java:174) at org.apache.maven.plugin.compiler.AbstractCompilerMojo.execute(AbstractCompilerMojo.java:1134) at org.apache.maven.plugin.compiler.CompilerMojo.execute(CompilerMojo.java:187) at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:137) at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:210) at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:156) at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:148) at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:117) at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:81) at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build(SingleThreadedBuilder.java:56) at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:128) at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:305) at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:192) at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:105) at org.apache.maven.cli.MavenCli.execute(MavenCli.java:957) at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:289) at org.apache.maven.cli.MavenCli.main(MavenCli.java:193) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:567) at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:282) at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:225) at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:406) at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:347) From dev at anthonyv.be Fri May 1 17:39:06 2020 From: dev at anthonyv.be (Anthony Vanelverdinghe) Date: Fri, 1 May 2020 19:39:06 +0200 Subject: @SafeVarargs vs @SuppressWarnings("varargs") Message-ID: <2140cb38-e6fd-141b-75f6-3d7af84e2a57@anthonyv.be> Hi Please consider the following class: ??? import java.util.*; ??? import java.util.function.Predicate; ??? class Foo { ??????? @SafeVarargs // suppresses (1) but not (2) ??????? @SuppressWarnings("varargs") // suppresses (2) but not (1) ??????? static void bar(T o, Predicate... predicates) { ??????????? // (1) warning: [unchecked] Possible heap pollution from parameterized vararg type Predicate ??????????? for(Predicate predicate : predicates) { ??????????????? predicate.test(o); ??????????? } ??????????? // (2) warning: [varargs] Varargs method could cause heap pollution from non-reifiable varargs parameter predicates ??????????? Arrays.stream(predicates).forEachOrdered(predicate -> predicate.test(o)); ??????? } ??????? // copied from https://docs.oracle.com/en/java/javase/14/docs/specs/man/javac.html#examples-of-using--xlint-keys ??????? public static void addToList(List listArg, T... elements) { ??????????? for (T x : elements) { ??????????????? listArg.add(x); ??????????? } ??????? } ??????? static void baz() { ??????????? addToList(List.of(""), "foo"); ??????? } ??? } As you can see, the method `bar` does the same thing twice, but in different ways: the first time it uses an enhanced for statement, the second time it uses Arrays::stream. Using a for-loop results in a warning of type "unchecked", which can be suppressed with @SafeVarargs. Using Arrays::stream results in a warning of type "varargs", which can be suppressed with @SuppressWarnings("varargs"). The method `addToList` was copied from the documentation for the "varargs" Xlint type [1], which states that its compilation will create the warning: "warning: [varargs] Possible heap pollution from parameterized vararg type T". However, comparing with the `bar` method, this is the Xlint type of the second warning, combined with the message of the first warning, which seems suspicious. And indeed, compiling it gives me an "unchecked" warning, not a "varargs" warning. Moreover, the documentation first says: "Warns about unsafe **use** of variable arguments (varargs) methods", but then after the example says: "The compiler generates the following warning for the **definition** of the method". From the documentation I thought that the "varargs" type is indeed about uses of varargs methods which haven't been annotated with `@SafeVarargs`. But this is contradicted by the invocation of `addToList` in the method `baz`, which doesn't result in an Xlint warning at all. To summarize, I believe: * there are 2 issues with javac here: ??? 1) both warnings in the `bar` method should be the same, namely: "warning: [unchecked] Possible heap pollution from parameterized vararg type Predicate" and only `@SafeVarargs` should be needed to be able to compile the method without any warnings ??? 2) there's no warning in `baz`, even though I think it should give a warning of type "varargs" * and the current documentation for the "varargs" Xlint type is wrong Is the above correct? If so, I'll file bug reports for these. If not, I'm confused, so I'd appreciate any clarifications. Kind regards, Anthony [1] https://docs.oracle.com/en/java/javase/14/docs/specs/man/javac.html#examples-of-using--xlint-keys From joe.darcy at oracle.com Sat May 9 16:35:36 2020 From: joe.darcy at oracle.com (Joe Darcy) Date: Sat, 9 May 2020 09:35:36 -0700 Subject: JDK 15 RFR of JDK-8244673: Add periods to SourceVersion.isName javadoc Message-ID: <28e7f7df-7604-0492-9120-1211c066e9bd@oracle.com> Hello, While doing a CSR review, I noticed a few missing periods of two methods in SourceVersion; the patch for adding the periods is below. Thanks, -Joe --- a/src/java.compiler/share/classes/javax/lang/model/SourceVersion.java Sat May 09 09:49:08 2020 +0530 +++ b/src/java.compiler/share/classes/javax/lang/model/SourceVersion.java Sat May 09 09:35:22 2020 -0700 @@ -325,7 +325,7 @@ ????? * literal in any segment. ????? * ????? * This method returns {@code true} for restricted -???? * keywords and restricted identifiers +???? * keywords and restricted identifiers. ????? * ????? * @param name the string to check ????? * @return {@code true} if this string is a @@ -351,7 +351,7 @@ ????? * literal in any segment. ????? * ????? * This method returns {@code true} for restricted -???? * keywords and restricted identifiers +???? * keywords and restricted identifiers. ????? * ????? * @param name the string to check ????? * @param version the version to use From jonathan.gibbons at oracle.com Sat May 9 18:52:42 2020 From: jonathan.gibbons at oracle.com (Jonathan Gibbons) Date: Sat, 9 May 2020 11:52:42 -0700 Subject: JDK 15 RFR of JDK-8244673: Add periods to SourceVersion.isName javadoc In-Reply-To: <28e7f7df-7604-0492-9120-1211c066e9bd@oracle.com> References: <28e7f7df-7604-0492-9120-1211c066e9bd@oracle.com> Message-ID: <7c707445-7690-f748-61fa-eb61ab8b14a7@oracle.com> +1 -- Jon On 5/9/20 9:35 AM, Joe Darcy wrote: > Hello, > > While doing a CSR review, I noticed a few missing periods of two > methods in SourceVersion; the patch for adding the periods is below. > > Thanks, > > -Joe > > --- > a/src/java.compiler/share/classes/javax/lang/model/SourceVersion.java > Sat May 09 09:49:08 2020 +0530 > +++ > b/src/java.compiler/share/classes/javax/lang/model/SourceVersion.java > Sat May 09 09:35:22 2020 -0700 > @@ -325,7 +325,7 @@ > ????? * literal in any segment. > ????? * > ????? * This method returns {@code true} for restricted > -???? * keywords and restricted identifiers > +???? * keywords and restricted identifiers. > ????? * > ????? * @param name the string to check > ????? * @return {@code true} if this string is a > @@ -351,7 +351,7 @@ > ????? * literal in any segment. > ????? * > ????? * This method returns {@code true} for restricted > -???? * keywords and restricted identifiers > +???? * keywords and restricted identifiers. > ????? * > ????? * @param name the string to check > ????? * @param version the version to use > From jan.lahoda at oracle.com Mon May 11 15:25:39 2020 From: jan.lahoda at oracle.com (Jan Lahoda) Date: Mon, 11 May 2020 17:25:39 +0200 Subject: RFR: JDK-8241616: Timestamps on ct.sym entries lead to non-reproducible builds In-Reply-To: <905baa80-ad30-5fb9-8cdd-2cdcf71011a1@oracle.com> References: <799e284b-eb3e-a582-bcd6-93305ec62bcd@oracle.com> <905baa80-ad30-5fb9-8cdd-2cdcf71011a1@oracle.com> Message-ID: Thanks Magnus for the SOURCE_DATE_EPOCH! I've adjusted the patch to use it: http://cr.openjdk.java.net/~jlahoda/8241616/webrev.01/ It also explicitly sets the output of TransitiveDependencies on the command line (before it was passing just the directory into which the file was written). Also should resolve the suspicious timestamp code noted by Alan, by removing the code altogether, as we can use the timestamp provided by the build. The ct.sym will now be reproducible only if the --with-source-date option is used. I wonder why at least "current" is not the default - that would probably make testing reproducible builds much easier. How does this look? Thanks, Jan On 07. 05. 20 17:48, Magnus Ihse Bursie wrote: > On 2020-04-30 14:50, Jan Lahoda wrote: >> On 30. 04. 20 14:29, Magnus Ihse Bursie wrote: >>> On 2020-04-30 12:41, Alan Bateman wrote: >>>> >>>> >>>> On 30/04/2020 08:03, Jan Lahoda wrote: >>>>> Hi, >>>>> >>>>> The building of lib/ct.sym is not reproducible, due to timestamps >>>>> of files inside the file (which is basically a zip file). >>>>> >>>>> The proposed solution is to use a constant timestamp for the files >>>>> inside the ct.sym file. To simplify the construction, the >>>>> CreateSymbols tool does not produce files on the filesystem >>>>> anymore, but rather constructs the ct.sym directly. >>>>> >>>>> Proposed webrev: >>>>> http://cr.openjdk.java.net/~jlahoda/8241616/webrev.00/ >>>>> JBS: https://bugs.openjdk.java.net/browse/JDK-8241616 >>>> 1587656816359 = 2020-04-23T15:46:56.359Z. Is there anything >>>> significant with this timestamp? Magnus might have suggestions but >>>> maybe it would be saner to pick up the value of DEFAULT_VERSION_DATE. >>> There is an officially suggested standard, SOURCE_DATE_EPOCH for >>> reproducible builds. [1] I have long-term vision to include this in >>> the entire JDK build, but has of yet not even started on that. :-( >>> >>> This might be a good first step to start using it. I can assist in >>> making the needed makefile changes to have that environment variable >>> available. >> >> I think a standard mechanism would be great. I don't think this patch >> is very urgent, so I am happy to wait some time (rather than add a >> timestamp to symbols and then remove it when there's a standard >> mechanism). > > JDK-8244592 is now in mainline, and you can start relying on > SOURCE_DATE_EPOCH being present in the environment when building. > > /Magnus >> >> Thanks, >> ??? Jan >> >>> >>> /Magnus >>> >>> [1] https://reproducible-builds.org/specs/source-date-epoch/ >>>> >>>> There is some curious code that generates the timestamp with: >>>> ?? Long.toString(FileTime.from(Instant.now()).toMillis()) >>>> Could this use Instant.now().toEpochMilli() instead? >>>> >>>> -Alan >>>> >>>> >>> > From martinrb at google.com Mon May 11 15:32:17 2020 From: martinrb at google.com (Martin Buchholz) Date: Mon, 11 May 2020 08:32:17 -0700 Subject: RFR: JDK-8241616: Timestamps on ct.sym entries lead to non-reproducible builds In-Reply-To: <799e284b-eb3e-a582-bcd6-93305ec62bcd@oracle.com> References: <799e284b-eb3e-a582-bcd6-93305ec62bcd@oracle.com> Message-ID: fyi Build reproducibility has become more important over the years. That is especially true at Google, where reproducible builds are more efficient. We have modified versions of various archivers that can generate deterministic metadata in the archive. And that includes the "jar" command. The file timestamps are the obvious thing to make reproducible, but there are other sources of non-determinism, e.g. file system traversal order. On Thu, Apr 30, 2020 at 12:05 AM Jan Lahoda wrote: > Hi, > > The building of lib/ct.sym is not reproducible, due to timestamps of > files inside the file (which is basically a zip file). > > The proposed solution is to use a constant timestamp for the files > inside the ct.sym file. To simplify the construction, the CreateSymbols > tool does not produce files on the filesystem anymore, but rather > constructs the ct.sym directly. > > Proposed webrev: http://cr.openjdk.java.net/~jlahoda/8241616/webrev.00/ > JBS: https://bugs.openjdk.java.net/browse/JDK-8241616 > > How does this look? > > Thanks, > Jan > -------------- next part -------------- An HTML attachment was scrubbed... URL: From magnus.ihse.bursie at oracle.com Mon May 11 15:41:28 2020 From: magnus.ihse.bursie at oracle.com (Magnus Ihse Bursie) Date: Mon, 11 May 2020 17:41:28 +0200 Subject: RFR: JDK-8241616: Timestamps on ct.sym entries lead to non-reproducible builds In-Reply-To: References: <799e284b-eb3e-a582-bcd6-93305ec62bcd@oracle.com> <905baa80-ad30-5fb9-8cdd-2cdcf71011a1@oracle.com> Message-ID: On 2020-05-11 17:25, Jan Lahoda wrote: > Thanks Magnus for the SOURCE_DATE_EPOCH! > > I've adjusted the patch to use it: > http://cr.openjdk.java.net/~jlahoda/8241616/webrev.01/ > > It also explicitly sets the output of TransitiveDependencies on the > command line (before it was passing just the directory into which the > file was written). Also should resolve the suspicious timestamp code > noted by Alan, by removing the code altogether, as we can use the > timestamp provided by the build. Looks good to me! > > The ct.sym will now be reproducible only if the --with-source-date > option is used. I wonder why at least "current" is not the default - > that would probably make testing reproducible builds much easier. That was my original intention, but after working with the patch I grew wary. Other tools might pick up SOURCE_DATE_EPOCH and without more testing on different platforms I would rather have the default something that mimics the old behavior. /Magnus > > How does this look? > > Thanks, > ??? Jan > > On 07. 05. 20 17:48, Magnus Ihse Bursie wrote: >> On 2020-04-30 14:50, Jan Lahoda wrote: >>> On 30. 04. 20 14:29, Magnus Ihse Bursie wrote: >>>> On 2020-04-30 12:41, Alan Bateman wrote: >>>>> >>>>> >>>>> On 30/04/2020 08:03, Jan Lahoda wrote: >>>>>> Hi, >>>>>> >>>>>> The building of lib/ct.sym is not reproducible, due to timestamps >>>>>> of files inside the file (which is basically a zip file). >>>>>> >>>>>> The proposed solution is to use a constant timestamp for the >>>>>> files inside the ct.sym file. To simplify the construction, the >>>>>> CreateSymbols tool does not produce files on the filesystem >>>>>> anymore, but rather constructs the ct.sym directly. >>>>>> >>>>>> Proposed webrev: >>>>>> http://cr.openjdk.java.net/~jlahoda/8241616/webrev.00/ >>>>>> JBS: https://bugs.openjdk.java.net/browse/JDK-8241616 >>>>> 1587656816359 = 2020-04-23T15:46:56.359Z. Is there anything >>>>> significant with this timestamp? Magnus might have suggestions but >>>>> maybe it would be saner to pick up the value of DEFAULT_VERSION_DATE. >>>> There is an officially suggested standard, SOURCE_DATE_EPOCH for >>>> reproducible builds. [1] I have long-term vision to include this in >>>> the entire JDK build, but has of yet not even started on that. :-( >>>> >>>> This might be a good first step to start using it. I can assist in >>>> making the needed makefile changes to have that environment >>>> variable available. >>> >>> I think a standard mechanism would be great. I don't think this >>> patch is very urgent, so I am happy to wait some time (rather than >>> add a timestamp to symbols and then remove it when there's a >>> standard mechanism). >> >> JDK-8244592 is now in mainline, and you can start relying on >> SOURCE_DATE_EPOCH being present in the environment when building. >> >> /Magnus >>> >>> Thanks, >>> ??? Jan >>> >>>> >>>> /Magnus >>>> >>>> [1] https://reproducible-builds.org/specs/source-date-epoch/ >>>>> >>>>> There is some curious code that generates the timestamp with: >>>>> ?? Long.toString(FileTime.from(Instant.now()).toMillis()) >>>>> Could this use Instant.now().toEpochMilli() instead? >>>>> >>>>> -Alan >>>>> >>>>> >>>> >> From TOSHIONA at jp.ibm.com Thu May 14 02:11:57 2020 From: TOSHIONA at jp.ibm.com (Toshio 5 Nakamura) Date: Thu, 14 May 2020 11:11:57 +0900 Subject: RFR: JDK-8233829: javac cannot find non-ASCII module name under non-UTF8 environment Message-ID: Hi, Can anyone please review this fix? Revised the patch simpler. In my understanding, the encoding is modified UTF-8 instead of standard UTF-8 in this case. So, the fix uses Convert utility class. Webrev.01: http://cr.openjdk.java.net/~tnakamura/8233829/webrev.01/ Best regards, Toshio Nakamura > From: Toshio 5 Nakamura/Japan/IBM > To: compiler-dev at openjdk.java.net > Date: 2020/04/16 21:39 > Subject: RFR: JDK-8233829: Non-ASCII module name cannot be handled > under non-UTF8 environment > > Hi all, > > Could you review this fix? Also, I'd like to ask a sponsor of the fix, since > I'm not a committer. > > Issue: https://bugs.openjdk.java.net/browse/JDK-8233829 > Webrev: http://cr.openjdk.java.net/~tnakamura/8233829/webrev.00/ > > If module name is in non-ASCII and environment is in non-UTF8, > javac's "--add-modules" option cannot find the module. > > com.sun.tools.javac.jvm.ModuleNameReader.utf8Mapper uses > String(byte[], int, int). > In problematic case, the String was generated by default encoding > which wasn't UTF8. > For example, Japanese Windows uses MS932 (Shift_JIS) encoding. > The byte[] in utf8Mapper method is always decoded by UTF-8. > > Tier1 tests on Linux and Windows passed. > > Best Regards, > Toshio Nakamura -------------- next part -------------- An HTML attachment was scrubbed... URL: From jonathan.gibbons at oracle.com Thu May 14 02:50:03 2020 From: jonathan.gibbons at oracle.com (Jonathan Gibbons) Date: Wed, 13 May 2020 19:50:03 -0700 Subject: RFR: JDK-8233829: javac cannot find non-ASCII module name under non-UTF8 environment In-Reply-To: References: Message-ID: <6eb52787-0ebd-1487-52c2-67cbfa04a6a4@oracle.com> Hi, Normally, bug fixes like this this should be accompanied by a corresponding regression test. While it may be a bit tricky to write a test for this situation, it seems like it would be worth having the test if possible. -- Jon On 5/13/20 7:11 PM, Toshio 5 Nakamura wrote: > > Hi, > > Can anyone please review this fix? > Revised the patch simpler. In my understanding, the encoding is > modified UTF-8 instead of standard UTF-8 in this case. So, the fix > uses Convert utility class. > > Webrev.01: http://cr.openjdk.java.net/~tnakamura/8233829/webrev.01/ > > Best regards, > Toshio Nakamura > > > From: Toshio 5 Nakamura/Japan/IBM > > To: compiler-dev at openjdk.java.net > > Date: 2020/04/16 21:39 > > Subject: RFR: JDK-8233829: Non-ASCII module name cannot be handled > > under non-UTF8 environment > > > > Hi all, > > > > Could you review this fix? Also, I'd like to ask a sponsor of the > fix, since > > I'm not a committer. > > > > Issue: https://bugs.openjdk.java.net/browse/JDK-8233829 > > Webrev: http://cr.openjdk.java.net/~tnakamura/8233829/webrev.00/ > > > > If module name is in non-ASCII and environment is in non-UTF8, > > javac's "--add-modules" option cannot find the module. > > > > com.sun.tools.javac.jvm.ModuleNameReader.utf8Mapper uses > > String(byte[], int, int). > > In problematic case, the String was generated by default encoding > > which wasn't UTF8. > > For example, Japanese Windows uses MS932 (Shift_JIS) encoding. > > The byte[] in utf8Mapper method is always decoded by UTF-8. > > > > Tier1 tests on Linux and Windows passed. > > > > Best Regards, > > Toshio Nakamura > -------------- next part -------------- An HTML attachment was scrubbed... URL: From TOSHIONA at jp.ibm.com Thu May 14 15:20:30 2020 From: TOSHIONA at jp.ibm.com (Toshio 5 Nakamura) Date: Fri, 15 May 2020 00:20:30 +0900 Subject: RFR: JDK-8233829: javac cannot find non-ASCII module name under non-UTF8 environment In-Reply-To: <6eb52787-0ebd-1487-52c2-67cbfa04a6a4@oracle.com> References: <6eb52787-0ebd-1487-52c2-67cbfa04a6a4@oracle.com> Message-ID: Hi Jon, Thank you for comments. Could you check webrev.02 which contains a testcase? Actually, this is not a direct test of the original problem since non-English Windows is required. But, I realized the patch fixed Unicode Surrogate Pair case, as well. It's caused by difference between Standard UTF-8 and Modified UTF-8, and it can be checked on English environment. I confirmed the test failed without the patch and passed with the patch. Tier1 tests also pass on Linux and Windows. Webrev.02: http://cr.openjdk.java.net/~tnakamura/8233829/webrev.02/ Best regards, Toshio Nakamura Jonathan Gibbons wrote on 2020/05/14 11:50:03: > From: Jonathan Gibbons > To: Toshio 5 Nakamura , compiler-dev at openjdk.java.net > Date: 2020/05/14 11:50 > Subject: [EXTERNAL] Re: RFR: JDK-8233829: javac cannot find non- > ASCII module name under non-UTF8 environment > > Hi, > Normally, bug fixes like this this should be accompanied by a > corresponding regression test. While it may be a bit tricky to write > a test for this situation, it seems like it would be worth having > the test if possible. > -- Jon > On 5/13/20 7:11 PM, Toshio 5 Nakamura wrote: > Hi, > > Can anyone please review this fix? > Revised the patch simpler. In my understanding, the encoding is > modified UTF-8 instead of standard UTF-8 in this case. So, the fix > uses Convert utility class. > > Webrev.01: http://cr.openjdk.java.net/~tnakamura/8233829/webrev.01/ > > Best regards, > Toshio Nakamura > > > From: Toshio 5 Nakamura/Japan/IBM > > To: compiler-dev at openjdk.java.net > > Date: 2020/04/16 21:39 > > Subject: RFR: JDK-8233829: Non-ASCII module name cannot be handled > > under non-UTF8 environment > > > > Hi all, > > > > Could you review this fix? Also, I'd like to ask a sponsor of the fix, since > > I'm not a committer. > > > > Issue: https://bugs.openjdk.java.net/browse/JDK-8233829 > > Webrev: http://cr.openjdk.java.net/~tnakamura/8233829/webrev.00/ > > > > If module name is in non-ASCII and environment is in non-UTF8, > > javac's "--add-modules" option cannot find the module. > > > > com.sun.tools.javac.jvm.ModuleNameReader.utf8Mapper uses > > String(byte[], int, int). > > In problematic case, the String was generated by default encoding > > which wasn't UTF8. > > For example, Japanese Windows uses MS932 (Shift_JIS) encoding. > > The byte[] in utf8Mapper method is always decoded by UTF-8. > > > > Tier1 tests on Linux and Windows passed. > > > > Best Regards, > > Toshio Nakamura -------------- next part -------------- An HTML attachment was scrubbed... URL: From adam.sotona at oracle.com Fri May 15 13:05:37 2020 From: adam.sotona at oracle.com (Adam Sotona) Date: Fri, 15 May 2020 15:05:37 +0200 Subject: RFR: 8244573 java.lang.ArrayIndexOutOfBoundsException thrown for malformed class file Message-ID: <0E30689B-28E9-41EF-9EB5-BC5E2D51CD44@oracle.com> Hi, I would like to ask for review of the patch fixing javap java.lang.ArrayIndexOutOfBoundsException in com.sun.tools.classfile.Code_attribute.getInstructions() for methods with no instructions. JBS: https://bugs.openjdk.java.net/browse/JDK-8244573 webrev: http://cr.openjdk.java.net/~asotona/8244573/webrev.00/ Mach 5 build with the patch passes all Tier1, Tier2 and Tier3 tests. Thank you, Adam -------------- next part -------------- An HTML attachment was scrubbed... URL: From jonathan.gibbons at oracle.com Fri May 15 14:36:44 2020 From: jonathan.gibbons at oracle.com (Jonathan Gibbons) Date: Fri, 15 May 2020 07:36:44 -0700 Subject: RFR: 8244573 java.lang.ArrayIndexOutOfBoundsException thrown for malformed class file In-Reply-To: <0E30689B-28E9-41EF-9EB5-BC5E2D51CD44@oracle.com> References: <0E30689B-28E9-41EF-9EB5-BC5E2D51CD44@oracle.com> Message-ID: <5ddb2fce-f310-565d-70fc-8fd73995512e@oracle.com> +1 -- Jon On 5/15/20 6:05 AM, Adam Sotona wrote: > Hi, > I would like to ask for review of the patch fixing javap > java.lang.ArrayIndexOutOfBoundsException in > com.sun.tools.classfile.Code_attribute.getInstructions() for methods > with no instructions. > > JBS: https://bugs.openjdk.java.net/browse/JDK-8244573 > webrev: http://cr.openjdk.java.net/~asotona/8244573/webrev.00/ > > Mach 5 build with the patch passes all Tier1, Tier2 and Tier3 tests. > > Thank you, > Adam From jan.lahoda at oracle.com Fri May 15 14:53:54 2020 From: jan.lahoda at oracle.com (Jan Lahoda) Date: Fri, 15 May 2020 16:53:54 +0200 Subject: RFR: JDK-8241519: javac crashes with wrong module-info.class in module path Message-ID: <31803490-d853-b59e-8cfa-d561e469eac0@oracle.com> Hi, When javac loads module-info.class, that is broken, and hence a CompletionFailure (or BadClassFile) is thrown, the corresponding ModuleSymbol is not marked as erroneous, and is not fully completed, which may lead to follow on exceptions. The proposal is to mark the ModuleSymbol as erroneous, and do basic initialization of it, when CompletionFailure is thrown while loading the module-info.class. Proposed webrev: http://cr.openjdk.java.net/~jlahoda/8241519/webrev.00/ JBS: https://bugs.openjdk.java.net/browse/JDK-8241519 How does this look? Thanks, Jan From joe.darcy at oracle.com Sun May 17 17:15:48 2020 From: joe.darcy at oracle.com (Joe Darcy) Date: Sun, 17 May 2020 10:15:48 -0700 Subject: JDK 15 RFR of JDK-8245146: Update description of SourceVersion.RELEASE_15 with text blocks Message-ID: <787bc19e-d449-7b61-6d73-7a3e2309112e@oracle.com> Hello, As text blocks (JDK-8236934) have been added as a standard feature in JDK 15, the description of SourceVersion.RELEASE_15 should be updated accordingly. Please review the patch below which does this. Thanks, -Joe diff -r 212f5084ac72 src/java.compiler/share/classes/javax/lang/model/SourceVersion.java --- a/src/java.compiler/share/classes/javax/lang/model/SourceVersion.java Sun May 17 11:09:52 2020 -0400 +++ b/src/java.compiler/share/classes/javax/lang/model/SourceVersion.java Sun May 17 10:15:20 2020 -0700 @@ -62,7 +62,7 @@ ????? *? 13: no changes (switch expressions and text blocks in preview) ????? *? 14: switch expressions (pattern matching and records in ????? *????? preview, text blocks in preview again) -???? *? 15: TBD +???? *? 15: text blocks (records and pattern matching in preview again) ????? */ ???? /** @@ -211,6 +211,8 @@ ????? * The version recognized by the Java Platform, Standard Edition ????? * 15. ????? * +???? * Additions in this release include text blocks. +???? * ????? * @since 15 ????? */ ????? RELEASE_15; From james.laskey at oracle.com Sun May 17 18:10:37 2020 From: james.laskey at oracle.com (James Laskey) Date: Sun, 17 May 2020 15:10:37 -0300 Subject: JDK 15 RFR of JDK-8245146: Update description of SourceVersion.RELEASE_15 with text blocks In-Reply-To: <787bc19e-d449-7b61-6d73-7a3e2309112e@oracle.com> References: <787bc19e-d449-7b61-6d73-7a3e2309112e@oracle.com> Message-ID: <0AE8AF65-F806-485C-9B49-BE065CD4E5CD@oracle.com> +1 ?? > On May 17, 2020, at 2:16 PM, Joe Darcy wrote: > > ?Hello, > > As text blocks (JDK-8236934) have been added as a standard feature in JDK 15, the description of SourceVersion.RELEASE_15 should be updated accordingly. Please review the patch below which does this. > > Thanks, > > -Joe > > diff -r 212f5084ac72 src/java.compiler/share/classes/javax/lang/model/SourceVersion.java > --- a/src/java.compiler/share/classes/javax/lang/model/SourceVersion.java Sun May 17 11:09:52 2020 -0400 > +++ b/src/java.compiler/share/classes/javax/lang/model/SourceVersion.java Sun May 17 10:15:20 2020 -0700 > @@ -62,7 +62,7 @@ > * 13: no changes (switch expressions and text blocks in preview) > * 14: switch expressions (pattern matching and records in > * preview, text blocks in preview again) > - * 15: TBD > + * 15: text blocks (records and pattern matching in preview again) > */ > > /** > @@ -211,6 +211,8 @@ > * The version recognized by the Java Platform, Standard Edition > * 15. > * > + * Additions in this release include text blocks. > + * > * @since 15 > */ > RELEASE_15; > From joe.darcy at oracle.com Sun May 17 21:04:19 2020 From: joe.darcy at oracle.com (Joe Darcy) Date: Sun, 17 May 2020 14:04:19 -0700 Subject: JDK 15 RFR of JDK-8245147: Refactor and improve utility of test/langtools/tools/javac/versions/Versions.java Message-ID: Hello, While starting to look at the JDK 16 preparations, I noticed some improvements that could be made to one of the version-lated javac tests: ??? JDK-8245147: Refactor and improve utility of test/langtools/tools/javac/versions/Versions.java ??? http://cr.openjdk.java.net/~darcy/8245147.2/ This change: ??? * adds non-trivial testing of new language levels ??? * avoid unnecessary mixing of arrays and lists ??? * refactors embedded Java sources to use text blocks ??? * removes vestiges of the "1.N" naming convention ??? * leaves breadcrumbs for future updates to the file Thanks, -Joe From adam.sotona at oracle.com Mon May 18 09:28:56 2020 From: adam.sotona at oracle.com (Adam Sotona) Date: Mon, 18 May 2020 11:28:56 +0200 Subject: RFR: 8244573 java.lang.ArrayIndexOutOfBoundsException thrown for malformed class file In-Reply-To: <5ddb2fce-f310-565d-70fc-8fd73995512e@oracle.com> References: <0E30689B-28E9-41EF-9EB5-BC5E2D51CD44@oracle.com> <5ddb2fce-f310-565d-70fc-8fd73995512e@oracle.com> Message-ID: <3A56AC06-EFBF-49D1-9081-FF203C57B324@oracle.com> I've also added corresponding test using jcod-generated Malformed.class (thanks Vicente for your suggestion): webrev: http://cr.openjdk.java.net/~asotona/8244573/webrev.01/ JBS: https://bugs.openjdk.java.net/browse/JDK-8244573 Thanks for the review, Adam > On 15 May 2020, at 16:36, Jonathan Gibbons wrote: > > +1 > > -- Jon > > On 5/15/20 6:05 AM, Adam Sotona wrote: >> Hi, >> I would like to ask for review of the patch fixing javap java.lang.ArrayIndexOutOfBoundsException in com.sun.tools.classfile.Code_attribute.getInstructions() for methods with no instructions. >> >> JBS: https://bugs.openjdk.java.net/browse/JDK-8244573 >> webrev: http://cr.openjdk.java.net/~asotona/8244573/webrev.00/ >> >> Mach 5 build with the patch passes all Tier1, Tier2 and Tier3 tests. >> >> Thank you, >> Adam -------------- next part -------------- An HTML attachment was scrubbed... URL: From jan.lahoda at oracle.com Mon May 18 14:55:07 2020 From: jan.lahoda at oracle.com (Jan Lahoda) Date: Mon, 18 May 2020 16:55:07 +0200 Subject: JDK-8244763: Update --release 8 symbol information after JSR 337 MR3 Message-ID: Hi, Some new APIs have been introduced in JSR 337 MR3 (JDK 8). We should update the historical data for JDK 8 with these new APIs. As this was the first time we need to update data for a release that other release data use as a baseline, it was necessary to improve the CreateSymbols tool a little: -adding ability to ignore synchronized and native flags for methods (as these don't affect the API) -when analyzing a new entry (method/field/class), and multiple existing entries compatible with the new one exist, the existing entry that matches the baseline is chosen (this helps to eliminate unnecessary entries, esp. when the synchronized or native flag changes) -when replacing/updating a release data, the original approach was to remove the data for the release, and read them from classfiles, and build the record again from scratch. This does not work well for baseline data, so the new approach is: --keep all the existing data --the new data are load into a new auxiliary slot, called "$" --the old data for the given release are deleted --the auxiliary release is renamed from "$" to the correct release name Together these changes allow to minimize the updates to JDK 8 data, to mostly only changes in the MR3, with some extra changes like new/removed overrides (where the superclass has the method that is/was overridden). The proposed changes to CreateSymbols are: http://cr.openjdk.java.net/~jlahoda/8244763/webrev.00-create-symbols/ The proposed updates to the historical data are: http://cr.openjdk.java.net/~jlahoda/8244763/webrev.00-data/ Note the changes only apply for JDK 8 historical data, so JDK 8 data are updated, and JDK 7 and 9 data undo the changes. JBS: https://bugs.openjdk.java.net/browse/JDK-8244763 The intent is to backport to JDK 11u. How does this look? Thanks! Jan From adam.sotona at oracle.com Mon May 18 15:47:45 2020 From: adam.sotona at oracle.com (Adam Sotona) Date: Mon, 18 May 2020 17:47:45 +0200 Subject: RFR: 8238735 NPE compiling lambda expression within conditional expression Message-ID: Hi, I would like to ask for review of the patch fixing NPE while compiling lambda expression within conditional expression. The fix removes obsolete recovery cycle in com.sun.tools.javac.comp.Attr.visitLambda method when Types.FunctionDescriptorLookupError happens and it adds new test. JBS: https://bugs.openjdk.java.net/browse/JDK-8238735 webrev: http://cr.openjdk.java.net/~asotona/8238735/webrev.00/ Mach 5 build with the patch passes all Tier1, Tier2 and Tier3 tests. Thank you, Adam From jan.lahoda at oracle.com Mon May 18 16:36:49 2020 From: jan.lahoda at oracle.com (Jan Lahoda) Date: Mon, 18 May 2020 18:36:49 +0200 Subject: JDK-8244763: Update --release 8 symbol information after JSR 337 MR3 In-Reply-To: References: Message-ID: <87877fd1-5413-7518-a2e6-d6d2132f6356@oracle.com> I apologize, I used a wrong patch for the "data" webrev. The "class name java/util/jar/Attributes$Name" entry in java.base-7.sym.txt is first adding field descriptions, and then removing the old ones: --- > class name java/util/jar/Attributes$Name > field name EXTENSION_INSTALLATION descriptor Ljava/util/jar/Attributes$Name; flags 19 > field name IMPLEMENTATION_VENDOR_ID descriptor Ljava/util/jar/Attributes$Name; flags 19 > field name IMPLEMENTATION_URL descriptor Ljava/util/jar/Attributes$Name; flags 19 > -field name EXTENSION_INSTALLATION descriptor Ljava/util/jar/Attributes$Name; > -field name IMPLEMENTATION_VENDOR_ID descriptor Ljava/util/jar/Attributes$Name; > -field name IMPLEMENTATION_URL descriptor Ljava/util/jar/Attributes$Name;--- The correct order (and the order generated by the tool in the webrev.00-create-symbols/ webrev) is to first remove the field descriptions and then add the new ones: --- > class name java/util/jar/Attributes$Name > -field name EXTENSION_INSTALLATION descriptor Ljava/util/jar/Attributes$Name; > -field name IMPLEMENTATION_VENDOR_ID descriptor Ljava/util/jar/Attributes$Name; > -field name IMPLEMENTATION_URL descriptor Ljava/util/jar/Attributes$Name; > field name EXTENSION_INSTALLATION descriptor Ljava/util/jar/Attributes$Name; flags 19 > field name IMPLEMENTATION_VENDOR_ID descriptor Ljava/util/jar/Attributes$Name; flags 19 > field name IMPLEMENTATION_URL descriptor Ljava/util/jar/Attributes$Name; flags 19 --- An updated webrev is the correct data is here: http://cr.openjdk.java.net/~jlahoda/8244763/webrev.01-data/ The only change is the above difference in order of entries in Attributes$Name. Sorry for trouble. Jan On 18. 05. 20 16:55, Jan Lahoda wrote: > Hi, > > Some new APIs have been introduced in JSR 337 MR3 (JDK 8). We should > update the historical data for JDK 8 with these new APIs. > > As this was the first time we need to update data for a release that > other release data use as a baseline, it was necessary to improve the > CreateSymbols tool a little: > -adding ability to ignore synchronized and native flags for methods (as > these don't affect the API) > -when analyzing a new entry (method/field/class), and multiple existing > entries compatible with the new one exist, the existing entry that > matches the baseline is chosen (this helps to eliminate unnecessary > entries, esp. when the synchronized or native flag changes) > -when replacing/updating a release data, the original approach was to > remove the data for the release, and read them from classfiles, and > build the record again from scratch. This does not work well for > baseline data, so the new approach is: > --keep all the existing data > --the new data are load into a new auxiliary slot, called "$" > --the old data for the given release are deleted > --the auxiliary release is renamed from "$" to the correct release name > > Together these changes allow to minimize the updates to JDK 8 data, to > mostly only changes in the MR3, with some extra changes like new/removed > overrides (where the superclass has the method that is/was overridden). > > The proposed changes to CreateSymbols are: > http://cr.openjdk.java.net/~jlahoda/8244763/webrev.00-create-symbols/ > > The proposed updates to the historical data are: > http://cr.openjdk.java.net/~jlahoda/8244763/webrev.00-data/ > > Note the changes only apply for JDK 8 historical data, so JDK 8 data are > updated, and JDK 7 and 9 data undo the changes. > > JBS: https://bugs.openjdk.java.net/browse/JDK-8244763 > > The intent is to backport to JDK 11u. > > How does this look? > > Thanks! > > Jan From bradford.wetmore at oracle.com Mon May 18 17:47:28 2020 From: bradford.wetmore at oracle.com (Bradford Wetmore) Date: Mon, 18 May 2020 10:47:28 -0700 Subject: JDK-8244763: Update --release 8 symbol information after JSR 337 MR3 In-Reply-To: References: Message-ID: Thanks again Jan for looking into and fixing this. I looked over the new entries last week, and the new MR3 ALPN/PSS items looked good. My only comment is that as a newbie to this area, the "header" attribute includes the "innerclass" parameters: innerclass isn't an attribute on its own which is what I originally thought. In particular, our JCE javax.crypto.SealedObject implementation changed between 7 and 8 with the addition of an internal lambda in our implementation code (not part of the API). static { SharedSecrets.setJavaxCryptoSealedObjectAccess( (obj,c) -> obj.getExtObjectInputStream(c)); } AIUI, 8u is the baseline which includes the class/header(+innerclass)/fields/methods attributes. 7u is restating the class/header attributes (the same in the original .java class definition), but didn't mention the innerclass "attribute" in the review. This generated: ---begin--- 8u == class name javax/crypto/SealedObject header extends java/lang/Object implements java/io/Serializable flags 21 innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19 field name encodedParams descriptor [B flags 4 method name descriptor (Ljava...deleted... 7u == class name javax/crypto/SealedObject header extends java/lang/Object implements java/io/Serializable flags 21 ---end--- Jan explained privately that the header actually includes the innerclass, so restating the header is sufficient, but that wasn't intuitive to me without knowing that detail. It would be more intuitive to me to see either: 1. innerclass indented a bit in the original JDK 8 code: ---begin--- class name javax/crypto/SealedObject header extends java/lang/Object implements java/io/Serializable flags 21 innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19 ---end--- or, 2. a delta "-innerclass" entry. e.g. ---begin--- class name javax/crypto/SealedObject header extends java/lang/Object implements java/io/Serializable flags 21 -innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass ---end--- but this may not be correct upon further contemplation. Anyway, I approve the MR3 (ALPN/PSS) entries, but did not review the symbol creation code. Brad On 5/18/2020 7:55 AM, Jan Lahoda wrote: > Hi, > > Some new APIs have been introduced in JSR 337 MR3 (JDK 8). We should > update the historical data for JDK 8 with these new APIs. > > As this was the first time we need to update data for a release that > other release data use as a baseline, it was necessary to improve the > CreateSymbols tool a little: > -adding ability to ignore synchronized and native flags for methods (as > these don't affect the API) > -when analyzing a new entry (method/field/class), and multiple existing > entries compatible with the new one exist, the existing entry that > matches the baseline is chosen (this helps to eliminate unnecessary > entries, esp. when the synchronized or native flag changes) > -when replacing/updating a release data, the original approach was to > remove the data for the release, and read them from classfiles, and > build the record again from scratch. This does not work well for > baseline data, so the new approach is: > --keep all the existing data > --the new data are load into a new auxiliary slot, called "$" > --the old data for the given release are deleted > --the auxiliary release is renamed from "$" to the correct release name > > Together these changes allow to minimize the updates to JDK 8 data, to > mostly only changes in the MR3, with some extra changes like new/removed > overrides (where the superclass has the method that is/was overridden). > > The proposed changes to CreateSymbols are: > http://cr.openjdk.java.net/~jlahoda/8244763/webrev.00-create-symbols/ > > The proposed updates to the historical data are: > http://cr.openjdk.java.net/~jlahoda/8244763/webrev.00-data/ > > Note the changes only apply for JDK 8 historical data, so JDK 8 data are > updated, and JDK 7 and 9 data undo the changes. > > JBS: https://bugs.openjdk.java.net/browse/JDK-8244763 > > The intent is to backport to JDK 11u. > > How does this look? > > Thanks! > > Jan From vicente.romero at oracle.com Mon May 18 22:42:34 2020 From: vicente.romero at oracle.com (Vicente Romero) Date: Mon, 18 May 2020 18:42:34 -0400 Subject: RFR: JDK-8227046: compiler implementation for sealed classes, JDK-8227047: Javadoc for sealed types and JDK-8227044: javax.lang.model for sealed classes Message-ID: <3bd27bea-b8a3-88a2-5536-ea9610749ce4@oracle.com> Hi, Please review this patch for the compiler, javadoc and javax.lang.model support for the JEP 360 Sealed Classes (Preview). The changes are provided at [1], which implements the latest JLS for sealed types [2]. The patch also include the needed changes to javadoc and javax.lang.model to support sealed types. The CSR witht the changes in the javax.lang.model spec is at [3]. The sealed types JEP is accessible at [4]. There is an ongoing review for the VM and core-libs code of sealed types [5] and that code hasn't been included in this webrev, Thanks, Vicente [1] http://cr.openjdk.java.net/~vromero/8227046/webrev.00/ [2] http://cr.openjdk.java.net/~gbierman/jep360/jep360-20200513/specs/sealed-classes-jls.html [3] https://bugs.openjdk.java.net/browse/JDK-8244367 [4] https://openjdk.java.net/jeps/360 [5] https://mail.openjdk.java.net/pipermail/core-libs-dev/2020-May/066440.html From jan.lahoda at oracle.com Tue May 19 12:44:34 2020 From: jan.lahoda at oracle.com (Jan Lahoda) Date: Tue, 19 May 2020 14:44:34 +0200 Subject: RFR: JDK-8227046: compiler implementation for sealed classes, JDK-8227047: Javadoc for sealed types and JDK-8227044: javax.lang.model for sealed classes In-Reply-To: <3bd27bea-b8a3-88a2-5536-ea9610749ce4@oracle.com> References: <3bd27bea-b8a3-88a2-5536-ea9610749ce4@oracle.com> Message-ID: Hi Vicente, javac changes look overall OK to me. A few comments: -the handling of non-sealed in JavacParser is fairly good, even though I wonder if handling it in the tokenizer would not be better. If I read the specification correctly, "non-sealed" is specified as a keyword, so the tokenizer would seem like a proper place to recognize it (when preview is enabled, etc.). So, I think this: class NonSealed { { int non = 0; int sealed = 0; int c = non-sealed; } } should not compile, but it does. In any case, not sure if there are tests for broken/strange non-sealed, like "non -sealed", "non/**/-sealed", "non\u002Dsealed". Also, the checks for 'non', '-', 'sealed' tokens is duplicated twice, it would be nicer to have this slightly complex code only once. -parsing of permitted classes allows parameterized types, while it, I guess, should not. I.e. it appears javac compiles this without producing compile-time errors: public sealed class Sealed1 permits I { } final class I extends Sealed1 {} -in ClassReader: new AttributeReader(names.PermittedSubclasses, V58, CLASS_ATTRIBUTE) that should use V59? -I appreciate the error recovery for using "sealed/non-sealed" for local classes, but I wonder if there's something we could do when "sealed" is used without --enable-preview (for local and non-local classes/interfaces). Maybe if "sealed" is followed by another modifier, '@', 'class' or 'interface', we can produce a better errors? (But we can work on that later.) -regarding TypeElement#getPermittedSubclasses: it currently returns List; I wonder if returning List would be better? -not sure if I prefer the "invalid permits clause" errors like: --- DuplicateTypeInPermits.java:30: error: invalid permits clause sealed class Sealed permits Sub, Sub {} ^ (must not contain duplicates: Sub) --- something like: --- DuplicateTypeInPermits.java:30: error: repeated permitted type sealed class Sealed permits Sub, Sub {} ^ --- might work as well. -nit: ClassTree#getPermitsClause() could use List.of(), instead of Collections.emptyList(); Thanks, Jan On 19. 05. 20 0:42, Vicente Romero wrote: > Hi, > > Please review this patch for the compiler, javadoc and javax.lang.model > support for the JEP 360 Sealed Classes (Preview). The changes are > provided at [1], which implements the latest JLS for sealed types [2]. > The patch also include the needed changes to javadoc and > javax.lang.model to support sealed types. The CSR witht the changes in > the javax.lang.model spec is at [3]. The sealed types JEP is accessible > at [4]. There is an ongoing review for the VM and core-libs code of > sealed types [5] and that code hasn't been included in this webrev, > > Thanks, > Vicente > > [1] http://cr.openjdk.java.net/~vromero/8227046/webrev.00/ > [2] > http://cr.openjdk.java.net/~gbierman/jep360/jep360-20200513/specs/sealed-classes-jls.html > > [3] https://bugs.openjdk.java.net/browse/JDK-8244367 > [4] https://openjdk.java.net/jeps/360 > [5] > https://mail.openjdk.java.net/pipermail/core-libs-dev/2020-May/066440.html From gavin.bierman at oracle.com Tue May 19 12:48:37 2020 From: gavin.bierman at oracle.com (Gavin Bierman) Date: Tue, 19 May 2020 13:48:37 +0100 Subject: RFR: JDK-8227046: compiler implementation for sealed classes, JDK-8227047: Javadoc for sealed types and JDK-8227044: javax.lang.model for sealed classes In-Reply-To: References: <3bd27bea-b8a3-88a2-5536-ea9610749ce4@oracle.com> Message-ID: <00819242-4AC8-43EA-8E1C-49EF47421627@oracle.com> > On 19 May 2020, at 13:44, Jan Lahoda wrote: > > Hi Vicente, > > javac changes look overall OK to me. > > A few comments: > -the handling of non-sealed in JavacParser is fairly good, even though I wonder if handling it in the tokenizer would not be better. If I read the specification correctly, "non-sealed" is specified as a keyword, so the tokenizer would seem like a proper place to recognize it (when preview is enabled, etc.). So, I think this: > class NonSealed { > { > int non = 0; > int sealed = 0; > int c = non-sealed; > } > } > > should not compile, but it does. In any case, not sure if there are tests for broken/strange non-sealed, like "non -sealed", "non/**/-sealed", "non\u002Dsealed". That?s actually a bug in the spec (to be filed). I believe now the intent is to treat non-sealed as a contextual keyword, which is what the compiler does. Gavin From vicente.romero at oracle.com Tue May 19 21:37:25 2020 From: vicente.romero at oracle.com (Vicente Romero) Date: Tue, 19 May 2020 17:37:25 -0400 Subject: JDK 15 RFR of JDK-8245147: Refactor and improve utility of test/langtools/tools/javac/versions/Versions.java In-Reply-To: References: Message-ID: <729d1a7b-8d57-fdf0-d7a6-40281d0e3422@oracle.com> looks good to me, Vicente On 5/17/20 5:04 PM, Joe Darcy wrote: > Hello, > > While starting to look at the JDK 16 preparations, I noticed some > improvements that could be made to one of the version-lated javac tests: > > ??? JDK-8245147: Refactor and improve utility of > test/langtools/tools/javac/versions/Versions.java > ??? http://cr.openjdk.java.net/~darcy/8245147.2/ > > This change: > > ??? * adds non-trivial testing of new language levels > ??? * avoid unnecessary mixing of arrays and lists > ??? * refactors embedded Java sources to use text blocks > ??? * removes vestiges of the "1.N" naming convention > ??? * leaves breadcrumbs for future updates to the file > > Thanks, > > -Joe > From adam.sotona at oracle.com Wed May 20 08:19:00 2020 From: adam.sotona at oracle.com (Adam Sotona) Date: Wed, 20 May 2020 10:19:00 +0200 Subject: RFR: 8238735 NPE compiling lambda expression within conditional expression In-Reply-To: References: Message-ID: <2C56102B-9EA8-41A7-BD93-0383D50DAAD0@oracle.com> Hi, I would like to add results from Corpus compilation regression testing: the patch caused no regression in compilation of all Corpus sources :) Thanks for review, Adam > On 18 May 2020, at 17:47, Adam Sotona wrote: > > Hi, > I would like to ask for review of the patch fixing NPE while compiling lambda expression within conditional expression. > The fix removes obsolete recovery cycle in com.sun.tools.javac.comp.Attr.visitLambda method when Types.FunctionDescriptorLookupError happens and it adds new test. > > JBS: https://bugs.openjdk.java.net/browse/JDK-8238735 > webrev: http://cr.openjdk.java.net/~asotona/8238735/webrev.00/ > > Mach 5 build with the patch passes all Tier1, Tier2 and Tier3 tests. > > > Thank you, > Adam From maurizio.cimadamore at oracle.com Wed May 20 14:43:41 2020 From: maurizio.cimadamore at oracle.com (Maurizio Cimadamore) Date: Wed, 20 May 2020 15:43:41 +0100 Subject: RFR: 8238735 NPE compiling lambda expression within conditional expression In-Reply-To: References: Message-ID: <2dde6c4d-3e04-35fe-c059-3015ce8fbabb@oracle.com> I'm not sure about the fix... if there's a big lambda body with lots of errors inside which are independent from the target, the recovery step ensures that we report all such issues (which is useful when we are running e.g. inside an IDE). Ideally I'd like javac not to worry about recovery at all - but recovery was added for a reason; is that goal now less important? From the changes in the tests it is evident that with the patch some useful errors are now omitted. Maurizio On 18/05/2020 16:47, Adam Sotona wrote: > Hi, > I would like to ask for review of the patch fixing NPE while compiling lambda expression within conditional expression. > The fix removes obsolete recovery cycle in com.sun.tools.javac.comp.Attr.visitLambda method when Types.FunctionDescriptorLookupError happens and it adds new test. > > JBS: https://bugs.openjdk.java.net/browse/JDK-8238735 > webrev: http://cr.openjdk.java.net/~asotona/8238735/webrev.00/ > > Mach 5 build with the patch passes all Tier1, Tier2 and Tier3 tests. > > > Thank you, > Adam From adam.sotona at oracle.com Wed May 20 15:25:56 2020 From: adam.sotona at oracle.com (Adam Sotona) Date: Wed, 20 May 2020 17:25:56 +0200 Subject: RFR: 8238735 NPE compiling lambda expression within conditional expression In-Reply-To: <2C56102B-9EA8-41A7-BD93-0383D50DAAD0@oracle.com> References: <2C56102B-9EA8-41A7-BD93-0383D50DAAD0@oracle.com> Message-ID: <57806482-3960-438F-85C0-5BF17AC5F2B2@oracle.com> Hi, in this situation the second "recovery" round completely messes the results. In the first run the result is correctly filled: result = that.type = types.createErrorType(pt()); and suppose to be returned, however then another recovery is triggered and it re-enters the whole visitLambda with totally messed initial values. As a result the second evaluation returns Type.recoveryType constant, which I expect should be never returned and with no indication that the evaluation failed. Type.recoveryType has missing .tsym field and that is causing NPE. My original idea was to simply avoid NPE by appropriate check, however I do not see any such similar code across javac. I see many direct calls of Type.tsymin the code however no NPE protection anywhere. How it is guaranteed that instances of JCNoType (with null tsym) will never reach the code? Then I tried to fix it by correcting the result of the recovery round, however that seems to be very complex as the initial values of the recovery may vary a lot and detect the "messed" situation and find what suppose to be returned in that case is very complex. Then I realized that this is the situation where recovery should not happen as lambda without its FunctionDescriptor can hardly continue in compilation as it does not know anything about the expected content. The two error messages I had to remove from the test after the fix didn't make any sense to me. From all aspect there are two errors in the two lambdas, however second round of recovery listed two more nonsense errors: "compiler.err.cant.resolve.location: kindname.class, NonExistentClass, , , (compiler.misc.location: kindname.class, TargetType43, null)" BTW: Impact of the NPE is not just when used within conditional expression (as described in the 8238735), however it is silently killing javac with NPE anywhere you try to cast lambda expression that fails to lookup its FunctionDescriptor. For example just try to compile: class A {boolean b = (boolean)(() -> false);} Thanks, Adam > On 20 May 2020, at 10:19, Adam Sotona wrote: > > Hi, > I would like to add results from Corpus compilation regression testing: the patch caused no regression in compilation of all Corpus sources :) > > Thanks for review, > Adam > >> On 18 May 2020, at 17:47, Adam Sotona wrote: >> >> Hi, >> I would like to ask for review of the patch fixing NPE while compiling lambda expression within conditional expression. >> The fix removes obsolete recovery cycle in com.sun.tools.javac.comp.Attr.visitLambda method when Types.FunctionDescriptorLookupError happens and it adds new test. >> >> JBS: https://bugs.openjdk.java.net/browse/JDK-8238735 >> webrev: http://cr.openjdk.java.net/~asotona/8238735/webrev.00/ >> >> Mach 5 build with the patch passes all Tier1, Tier2 and Tier3 tests. >> >> >> Thank you, >> Adam > -------------- next part -------------- An HTML attachment was scrubbed... URL: From joe.darcy at oracle.com Thu May 21 05:21:13 2020 From: joe.darcy at oracle.com (Joe Darcy) Date: Wed, 20 May 2020 22:21:13 -0700 Subject: RFR: JDK-8227046: compiler implementation for sealed classes, JDK-8227047: Javadoc for sealed types and JDK-8227044: javax.lang.model for sealed classes In-Reply-To: <3bd27bea-b8a3-88a2-5536-ea9610749ce4@oracle.com> References: <3bd27bea-b8a3-88a2-5536-ea9610749ce4@oracle.com> Message-ID: <110dc24f-6f40-2425-375d-1d6fad091a46@oracle.com> Hi Vicente, In PrintingProcessor, I believe the printModifers method should remove "SEALED" from an enum, assuming the latest policy for enums discussed in the JLS is implemented (tl;dr -- all enums that cannot be implicitly final are implicitly sealed). In test/langtools/tools/javac/processing/model/element/TestSealed.java, List expected might be better constructor from a text block. Since SealedClassesProcessor extends JavacTestingAbstractProcessor, it doesn't need to have be annotated with @SupportedAnnotationTypes("*") or have a getSupportedSourceVersion method which returns latest since that is built-into the parent class. Thanks, -Joe On 5/18/2020 3:42 PM, Vicente Romero wrote: > Hi, > > Please review this patch for the compiler, javadoc and > javax.lang.model support for the JEP 360 Sealed Classes (Preview). The > changes are provided at [1], which implements the latest JLS for > sealed types [2]. The patch also include the needed changes to javadoc > and javax.lang.model to support sealed types. The CSR witht the > changes in the javax.lang.model spec is at [3]. The sealed types JEP > is accessible at [4]. There is an ongoing review for the VM and > core-libs code of sealed types [5] and that code hasn't been included > in this webrev, > > Thanks, > Vicente > > [1] http://cr.openjdk.java.net/~vromero/8227046/webrev.00/ > [2] > http://cr.openjdk.java.net/~gbierman/jep360/jep360-20200513/specs/sealed-classes-jls.html > > [3] https://bugs.openjdk.java.net/browse/JDK-8244367 > [4] https://openjdk.java.net/jeps/360 > [5] > https://mail.openjdk.java.net/pipermail/core-libs-dev/2020-May/066440.html From joe.darcy at oracle.com Thu May 21 05:31:45 2020 From: joe.darcy at oracle.com (Joe Darcy) Date: Wed, 20 May 2020 22:31:45 -0700 Subject: RFR: JDK-8227046: compiler implementation for sealed classes, JDK-8227047: Javadoc for sealed types and JDK-8227044: javax.lang.model for sealed classes In-Reply-To: References: <3bd27bea-b8a3-88a2-5536-ea9610749ce4@oracle.com> Message-ID: Hi Jan, On 5/19/2020 5:44 AM, Jan Lahoda wrote: > Hi Vicente, > > javac changes look overall OK to me. > > [snip] > -regarding TypeElement#getPermittedSubclasses: it currently returns > List; I wonder if returning List TypeElement> would be better? > I did discuss this design point with Vicente ahead of time. While we could probably get away with List here with the current design, I think List is more in keeping with TypeElement.getSuperclass returning a TypeMirror. Thanks, -Joe From maurizio.cimadamore at oracle.com Thu May 21 12:14:08 2020 From: maurizio.cimadamore at oracle.com (Maurizio Cimadamore) Date: Thu, 21 May 2020 13:14:08 +0100 Subject: RFR: JDK-8227046: compiler implementation for sealed classes, JDK-8227047: Javadoc for sealed types and JDK-8227044: javax.lang.model for sealed classes In-Reply-To: <3bd27bea-b8a3-88a2-5536-ea9610749ce4@oracle.com> References: <3bd27bea-b8a3-88a2-5536-ea9610749ce4@oracle.com> Message-ID: <11f8828c-607e-e844-1ac6-5977a40c9a77@oracle.com> Hi Vicente, looks very good. Some comments below. * the parser logic is clever in its use of position to apply context-dependent keyword detection; as Jan says, perhaps just share the code so that the position checks are not repeated. * I found one very edge-case quirk in the context-dependent logic; not sure how we wanna address: class Foo { ??? sealed m() {} } This fails with: Error: invalid method declaration; return type required As javac parses non-sealed as a modifier, and then expects a type. I think this is probably reasonable, but it's not as context-dependent as it could be I guess. * This case: class Bar { } sealed @interface Foo permits Bar Fails as expected, but only because Bar doesn't extends Foo. I believe we'd like to ban sealed on annotations more eagerly. Same for non-sealed. For enums and records (which are non-extensible) the compiler does the right thing and tells me that I can't just use sealed/non-sealed there. * The recovery logic in case preview features aren't enabled leaves something to be desired. For instance, if I compile this w/o --enable-preview: ?record Foo() {} I get a very sensible error: records are a preview feature and are disabled by default. ??? (use --enable-preview to enable records) However, if I compiler this w/o --enable-preview: sealed class Foo {} I get this: error: class, interface, or enum expected (no mention of preview features) It gets worse if I also specify a `permits`. * As Jan mentioned, type parameters on permitted types should be banned, not silently cleared in TypeEnter * Overall the type enter logic seems robust - I've tried several examples swapping superclass/subclass - using references to nested classes in supertype declaration, and it all works. Well done. * The error for lambda expressions leaves to be desired: sealed interface Action { ?void doAction(); } class Test { ? Action a = () -> { }; } Foo.java:6: error: class is not allowed to extend sealed class: Action ? Action a = () -> { }; ???????????? ^ I think a dedicated error here would be useful. * the same check is not applied to method references: class Test { ? Action a2 = Test::m; //no error ? static void m() { } } More generally, if a functional interface cannot be sealed, I think it would be better to inject the check in the functional interface check (e.g. Types::findDescriptorInternal) so that you won't need any extra code in Attr. This would also be more in spirit with the spec, where the non-sealedness check is defined in 9.8, not in section 15. * Pulling more on that string, the @FunctionalInterface annotation can be placed on a sealed interface and no error is issued * On ClassWriter - isn't calling adjustFlags() enough? That will truncate the long flags into an int - I think Flags.SEALED is bigger than that? // error messages * DuplicateTypesInPermits I suggest: test/langtools/tools/javac/diags/examples/DuplicateTypeInPermits.java:30: error: invalid permits clause sealed class Sealed permits Sub, Sub {} ??????????????????????????? ^ ? (repeated type: Sub) [this is consistent with the error we issues in other places - e.g. when you implements same interface twice] * NonSealedWithNoSealedSuper test/langtools/tools/javac/diags/examples/NonSealedWithNoSealedSuper.java:31: error: non-sealed modifier not allowed here non-sealed class Sub extends C {} ?????????? ^ ? (class must have a sealed superclasses) I suggest to replace the details message with something like this: (class C does not have any sealed supertypes) [since I expect this message to be applicable also for superinterfaces] * PermitsCantListDeclaringClass test/langtools/tools/javac/diags/examples/PermitsCantListDeclaringClass.java:30: error: invalid permits clause sealed class C permits C {} ?????????????????????? ^ ? (must not include the declaring class: C) Here I recommend something like: (illegal self-reference in permits clause) * PermitsCantListSuperType test/langtools/tools/javac/diags/examples/PermitsCantListSuperType.java:32: error: invalid permits clause sealed class C implements I permits I {} ??????????????????????????????????? ^ ? (must not include a supertype: I) I suggest: (illegal reference to supertype I) * PermitsInNoSealedClass test/langtools/tools/javac/diags/examples/PermitsInNoSealedClass.java:30: error: invalid permits clause class C permits Sub {} ??????? ^ ? (class must be sealed) This is good, but I noted that if you change the test to use an interface, the message still says "class" - the kindname should be used here. * SealedMustHaveSubtypes test/langtools/tools/javac/diags/examples/SealedMustHaveSubtypes.java:29: error: sealed class must have subclasses sealed class Sealed {} ?????? ^ I think this message reflects one of the main issues with the general type vs. class dichotomy. A subclass, in JLS lingo is e.g. `B` where `B extends A`. Interfaces do not play in the mix - they are not considered subclasses. The word subtypes could be more general - but again, it is a bit imprecise, since we're talking about declarations here, not types. I'll defer this conundrum to our spec gurus :-) Cheers Maurizio On 18/05/2020 23:42, Vicente Romero wrote: > Hi, > > Please review this patch for the compiler, javadoc and > javax.lang.model support for the JEP 360 Sealed Classes (Preview). The > changes are provided at [1], which implements the latest JLS for > sealed types [2]. The patch also include the needed changes to javadoc > and javax.lang.model to support sealed types. The CSR witht the > changes in the javax.lang.model spec is at [3]. The sealed types JEP > is accessible at [4]. There is an ongoing review for the VM and > core-libs code of sealed types [5] and that code hasn't been included > in this webrev, > > Thanks, > Vicente > > [1] http://cr.openjdk.java.net/~vromero/8227046/webrev.00/ > [2] > http://cr.openjdk.java.net/~gbierman/jep360/jep360-20200513/specs/sealed-classes-jls.html > > [3] https://bugs.openjdk.java.net/browse/JDK-8244367 > [4] https://openjdk.java.net/jeps/360 > [5] > https://mail.openjdk.java.net/pipermail/core-libs-dev/2020-May/066440.html From maurizio.cimadamore at oracle.com Thu May 21 12:20:34 2020 From: maurizio.cimadamore at oracle.com (Maurizio Cimadamore) Date: Thu, 21 May 2020 13:20:34 +0100 Subject: RFR: JDK-8227046: compiler implementation for sealed classes, JDK-8227047: Javadoc for sealed types and JDK-8227044: javax.lang.model for sealed classes In-Reply-To: References: <3bd27bea-b8a3-88a2-5536-ea9610749ce4@oracle.com> Message-ID: <63e71ec7-3273-dec4-4d87-a49c754da6f3@oracle.com> On 21/05/2020 06:31, Joe Darcy wrote: > Hi Jan, > > On 5/19/2020 5:44 AM, Jan Lahoda wrote: >> Hi Vicente, >> >> javac changes look overall OK to me. >> >> > [snip] > > >> -regarding TypeElement#getPermittedSubclasses: it currently returns >> List; I wonder if returning List> TypeElement> would be better? >> > I did discuss this design point with Vicente ahead of time. While we > could probably get away with List here with the current > design, I think List is more in keeping with > TypeElement.getSuperclass returning a TypeMirror. What do you think, in general of the 'getPermittedSubclasses' name? This term doesn't seem to apply to interfaces, as per section 8.1.4: " The optional extends clause in a normal class declaration specifies the direct superclass of the current class. " ... "A class is said to be a direct subclass of its direct superclass. The direct superclass is the class from whose implementation the implementation of the current class is derived. " "The subclass relationship is the transitive closure of the direct subclass relationship. A class A is a subclass of class C if either of the following is true: ??? A is the direct subclass of C ??? There exists a class B such that A is a subclass of B, and B is a subclass of C, applying this definition recursively. " So, if I have: sealed interface A permits I1, I2 { ... } sealed interface I1 { ... } sealed interface I2 { ... } Having a method called 'getPermittedSubclasses' give me the mirrors for I1 and I2 seems odd. Maurizio > > Thanks, > > -Joe > From jan.lahoda at oracle.com Thu May 21 12:55:36 2020 From: jan.lahoda at oracle.com (Jan Lahoda) Date: Thu, 21 May 2020 14:55:36 +0200 Subject: RFR: JDK-8227046: compiler implementation for sealed classes, JDK-8227047: Javadoc for sealed types and JDK-8227044: javax.lang.model for sealed classes In-Reply-To: References: <3bd27bea-b8a3-88a2-5536-ea9610749ce4@oracle.com> Message-ID: <49bc4865-66b3-eafe-a1c8-8982bc20ec5d@oracle.com> On 21. 05. 20 7:31, Joe Darcy wrote: > Hi Jan, > > On 5/19/2020 5:44 AM, Jan Lahoda wrote: >> Hi Vicente, >> >> javac changes look overall OK to me. >> >> > [snip] > > >> -regarding TypeElement#getPermittedSubclasses: it currently returns >> List; I wonder if returning List> TypeElement> would be better? >> > I did discuss this design point with Vicente ahead of time. While we > could probably get away with List here with the current > design, I think List is more in keeping with > TypeElement.getSuperclass returning a TypeMirror. Right, I thought the reason was consistency with getSuperclass()/getInterfaces(). OTOH using TypeMirror opens up a question which TypeMirror should be returned. For getSuperclass(), that is obviously the type written in the source code (which can be parameterized, raw, etc.) But here, the source code contains more a reference to the element (as e.g. in uses/provides directive in module-info), so it is not obvious to me how the TypeMirror should look like. Jan > > Thanks, > > -Joe > From adam.sotona at oracle.com Thu May 21 13:45:56 2020 From: adam.sotona at oracle.com (Adam Sotona) Date: Thu, 21 May 2020 15:45:56 +0200 Subject: RFR: 8241312 missing code coverage for records Message-ID: <3C0F5D0B-C0A1-4B37-BECE-0190790032AE@oracle.com> Hi, I would like to ask for review of the patch adding new tests to improve test coverage for records. The patch adds: - test for com.sun.tools.sjavac.comp.PubAPIs and com.sun.tools.sjavac.comp.PubapiVisitor - test for com.sun.tools.javac.comp.Check::validateAnnotation, com.sun.tools.javac.code.SymbolMetadata::removeDeclarationMetadata and ::removeFromCompoundList - test for javax.lang.model.util.ElementFilter::recordComponentsIn The patch however does not resolve comment about potentially dead code fragment of Lower::visitRecordDefalso described in JDK-8241312 . I was not able to reach that code by tests, however I'm unable to confirm that it is a dead code. JBS: https://bugs.openjdk.java.net/browse/JDK-8241312 webrev: http://cr.openjdk.java.net/~asotona/8241312/webrev.00/ Mach 5 build with the patch passes all Tier1, Tier2 and Tier3 tests. Thank you, Adam From jan.lahoda at oracle.com Thu May 21 14:54:43 2020 From: jan.lahoda at oracle.com (Jan Lahoda) Date: Thu, 21 May 2020 16:54:43 +0200 Subject: RFR: JDK-8245544: com/sun/tools/javac/platform/JDKPlatformProvider.java does not support ct.sym with platform versions 16+ Message-ID: Hi, Release versions are encoded as single characters inside the ct.sym. To encode versions >= 16, the radix 36 (Character.MAX_RADIX) is used while encoding the version. But, inside JDKPlatformProvider, the code that parses the versions uses radix 16, and so cannot work with ct.sym that contains data of JDK >=16. The proposal is to fix JDKPlatformProvider to parse the versions correctly, by using Character.MAX_RADIX. I was looking at possibilities to test this, and it would be possible - but difficult. And once we have support for JDK 16 in ct.sym, the existing tests will be verifying that the ct.sym handling works correctly. So I incline to not have specific tests for this (with noreg-hard). Webrev: http://cr.openjdk.java.net/~jlahoda/8245544/webrev.00/ JBS: https://bugs.openjdk.java.net/browse/JDK-8245544 What do you think? Thanks, Jan From jan.lahoda at oracle.com Fri May 22 11:03:40 2020 From: jan.lahoda at oracle.com (Jan Lahoda) Date: Fri, 22 May 2020 13:03:40 +0200 Subject: JDK-8244763: Update --release 8 symbol information after JSR 337 MR3 In-Reply-To: References: Message-ID: <0a8aaad8-51d4-43fa-9b53-9bc8c36397ab@oracle.com> Hi Brad, Thanks for your review and comments. I'll see if we can indent the innerclass entries in the header (i.e. option 1) separately. Jan On 18. 05. 20 19:47, Bradford Wetmore wrote: > Thanks again Jan for looking into and fixing this. > > I looked over the new entries last week, and the new MR3 ALPN/PSS items > looked good. > > My only comment is that as a newbie to this area, the "header" attribute > includes the "innerclass" parameters:? innerclass isn't an attribute on > its own which is what I originally thought. > > In particular, our JCE javax.crypto.SealedObject implementation changed > between 7 and 8 with the addition of an internal lambda in our > implementation code (not part of the API). > > ??? static { > ??????? SharedSecrets.setJavaxCryptoSealedObjectAccess( > ??????????? (obj,c) -> obj.getExtObjectInputStream(c)); > ??? } > > AIUI, 8u is the baseline which includes the > class/header(+innerclass)/fields/methods attributes.? 7u is restating > the class/header attributes (the same in the original .java class > definition), but didn't mention the innerclass "attribute" in the review. > > This generated: > > ---begin--- > 8u > == > class name javax/crypto/SealedObject > header extends java/lang/Object implements java/io/Serializable flags 21 > innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass > java/lang/invoke/MethodHandles innerClassName Lookup flags 19 > field name encodedParams descriptor [B flags 4 > method name descriptor (Ljava...deleted... > > 7u > == > class name javax/crypto/SealedObject > header extends java/lang/Object implements java/io/Serializable flags 21 > ---end--- > > Jan explained privately that the header actually includes the > innerclass, so restating the header is sufficient, but that wasn't > intuitive to me without knowing that detail. > > It would be more intuitive to me to see either: > > 1.? innerclass indented a bit in the original JDK 8 code: > > ---begin--- > class name javax/crypto/SealedObject > header extends java/lang/Object implements java/io/Serializable flags 21 > ? innerclass innerClass java/lang/invoke/MethodHandles$Lookup > outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19 > ---end--- > > or, > > 2. a delta "-innerclass" entry.? e.g. > > ---begin--- > class name javax/crypto/SealedObject > header extends java/lang/Object implements java/io/Serializable flags 21 > -innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass > ---end--- > > but this may not be correct upon further contemplation. > > Anyway, I approve the MR3 (ALPN/PSS) entries, but did not review the > symbol creation code. > > Brad > > On 5/18/2020 7:55 AM, Jan Lahoda wrote: >> Hi, >> >> Some new APIs have been introduced in JSR 337 MR3 (JDK 8). We should >> update the historical data for JDK 8 with these new APIs. >> >> As this was the first time we need to update data for a release that >> other release data use as a baseline, it was necessary to improve the >> CreateSymbols tool a little: >> -adding ability to ignore synchronized and native flags for methods >> (as these don't affect the API) >> -when analyzing a new entry (method/field/class), and multiple >> existing entries compatible with the new one exist, the existing entry >> that matches the baseline is chosen (this helps to eliminate >> unnecessary entries, esp. when the synchronized or native flag changes) >> -when replacing/updating a release data, the original approach was to >> remove the data for the release, and read them from classfiles, and >> build the record again from scratch. This does not work well for >> baseline data, so the new approach is: >> --keep all the existing data >> --the new data are load into a new auxiliary slot, called "$" >> --the old data for the given release are deleted >> --the auxiliary release is renamed from "$" to the correct release name >> >> Together these changes allow to minimize the updates to JDK 8 data, to >> mostly only changes in the MR3, with some extra changes like >> new/removed overrides (where the superclass has the method that is/was >> overridden). >> >> The proposed changes to CreateSymbols are: >> http://cr.openjdk.java.net/~jlahoda/8244763/webrev.00-create-symbols/ >> >> The proposed updates to the historical data are: >> http://cr.openjdk.java.net/~jlahoda/8244763/webrev.00-data/ >> >> Note the changes only apply for JDK 8 historical data, so JDK 8 data >> are updated, and JDK 7 and 9 data undo the changes. >> >> JBS: https://bugs.openjdk.java.net/browse/JDK-8244763 >> >> The intent is to backport to JDK 11u. >> >> How does this look? >> >> Thanks! >> >> Jan From joe.darcy at oracle.com Fri May 22 17:44:39 2020 From: joe.darcy at oracle.com (Joe Darcy) Date: Fri, 22 May 2020 10:44:39 -0700 Subject: RFR: JDK-8227046: compiler implementation for sealed classes, JDK-8227047: Javadoc for sealed types and JDK-8227044: javax.lang.model for sealed classes In-Reply-To: <49bc4865-66b3-eafe-a1c8-8982bc20ec5d@oracle.com> References: <3bd27bea-b8a3-88a2-5536-ea9610749ce4@oracle.com> <49bc4865-66b3-eafe-a1c8-8982bc20ec5d@oracle.com> Message-ID: Hi Jan, On 5/21/2020 5:55 AM, Jan Lahoda wrote: > On 21. 05. 20 7:31, Joe Darcy wrote: >> Hi Jan, >> >> On 5/19/2020 5:44 AM, Jan Lahoda wrote: >>> Hi Vicente, >>> >>> javac changes look overall OK to me. >>> >>> >> [snip] >> >> >>> -regarding TypeElement#getPermittedSubclasses: it currently returns >>> List; I wonder if returning List>> TypeElement> would be better? >>> >> I did discuss this design point with Vicente ahead of time. While we >> could probably get away with List here with the current >> design, I think List is more in keeping with >> TypeElement.getSuperclass returning a TypeMirror. > > Right, I thought the reason was consistency with > getSuperclass()/getInterfaces(). OTOH using TypeMirror opens up a > question which TypeMirror should be returned. For getSuperclass(), > that is obviously the type written in the source code (which can be > parameterized, raw, etc.) But here, the source code contains more a > reference to the element (as e.g. in uses/provides directive in > module-info), so it is not obvious to me how the TypeMirror should > look like. The current implementation, using javax.lang.model terminology, is doing TypeElement.asType() on the elements of the list, which seems reasonable. -Joe From vicente.romero at oracle.com Fri May 22 18:25:12 2020 From: vicente.romero at oracle.com (Vicente Romero) Date: Fri, 22 May 2020 14:25:12 -0400 Subject: RFR: JDK-8227046: compiler implementation for sealed classes, JDK-8227047: Javadoc for sealed types and JDK-8227044: javax.lang.model for sealed classes In-Reply-To: <11f8828c-607e-e844-1ac6-5977a40c9a77@oracle.com> References: <3bd27bea-b8a3-88a2-5536-ea9610749ce4@oracle.com> <11f8828c-607e-e844-1ac6-5977a40c9a77@oracle.com> Message-ID: Hi, Thanks Jan and Maurizio for the reviews. I have created another iteration that I hope addresses all of the comments. I recognize that dealing with `sealed`, `non-sealed` is the most complicated part as there is no guide right now from the spec. So I have tried to make them contextual keywords, for some informal definition of the concept, I think that with more success for the `sealed` case. So going in more detail this iteration includes: ?- ClassTree::getPermitsClause now returns `List.of()` ?- Types::findDescriptorInternal has been modified to fail on sealed interfaces ?- several error messages have been updated as suggested, on this front given that when a class list the same interface twice in the implements clause, the second occurrence is the one flagged, I did the same for repeated names in the permits clause ?- modifications in ClassReader and ClassWriter as suggested ?- JavacParser, the bulk of the changes are concentrated here, as mentioned above the goal has been to try to implement the contextual keyword thing and also give a nice error message in several corner case situations detected in the reviews ?- more tests were added Thanks, Vicente On 5/21/20 8:14 AM, Maurizio Cimadamore wrote: > Hi Vicente, > looks very good. Some comments below. > > * the parser logic is clever in its use of position to apply > context-dependent keyword detection; as Jan says, perhaps just share > the code so that the position checks are not repeated. > > * I found one very edge-case quirk in the context-dependent logic; not > sure how we wanna address: > > class Foo { > ??? sealed m() {} > } > > This fails with: > > Error: invalid method declaration; return type required > > As javac parses non-sealed as a modifier, and then expects a type. I > think this is probably reasonable, but it's not as context-dependent > as it could be I guess. > > * This case: > > class Bar { } > sealed @interface Foo permits Bar > > Fails as expected, but only because Bar doesn't extends Foo. I believe > we'd like to ban sealed on annotations more eagerly. Same for > non-sealed. For enums and records (which are non-extensible) the > compiler does the right thing and tells me that I can't just use > sealed/non-sealed there. > > * The recovery logic in case preview features aren't enabled leaves > something to be desired. For instance, if I compile this w/o > --enable-preview: > > ?record Foo() {} > > I get a very sensible error: > > records are a preview feature and are disabled by default. > ??? (use --enable-preview to enable records) > > However, if I compiler this w/o --enable-preview: > > sealed class Foo {} > > I get this: > > error: class, interface, or enum expected > > (no mention of preview features) > > It gets worse if I also specify a `permits`. > > * As Jan mentioned, type parameters on permitted types should be > banned, not silently cleared in TypeEnter > > * Overall the type enter logic seems robust - I've tried several > examples swapping superclass/subclass - using references to nested > classes in supertype declaration, and it all works. Well done. > > * The error for lambda expressions leaves to be desired: > > sealed interface Action { > ?void doAction(); > } > > class Test { > ? Action a = () -> { }; > } > > Foo.java:6: error: class is not allowed to extend sealed class: Action > ? Action a = () -> { }; > ???????????? ^ > > I think a dedicated error here would be useful. > > > * the same check is not applied to method references: > > > class Test { > > ? Action a2 = Test::m; //no error > > ? static void m() { } > } > > More generally, if a functional interface cannot be sealed, I think it > would be better to inject the check in the functional interface check > (e.g. Types::findDescriptorInternal) so that you won't need any extra > code in Attr. This would also be more in spirit with the spec, where > the non-sealedness check is defined in 9.8, not in section 15. > > * Pulling more on that string, the @FunctionalInterface annotation can > be placed on a sealed interface and no error is issued > > * On ClassWriter - isn't calling adjustFlags() enough? That will > truncate the long flags into an int - I think Flags.SEALED is bigger > than that? > > > // error messages > > * DuplicateTypesInPermits > > I suggest: > > test/langtools/tools/javac/diags/examples/DuplicateTypeInPermits.java:30: > error: invalid permits clause > sealed class Sealed permits Sub, Sub {} > ??????????????????????????? ^ > ? (repeated type: Sub) > > [this is consistent with the error we issues in other places - e.g. > when you implements same interface twice] > > * NonSealedWithNoSealedSuper > > test/langtools/tools/javac/diags/examples/NonSealedWithNoSealedSuper.java:31: > error: non-sealed modifier not allowed here > non-sealed class Sub extends C {} > ?????????? ^ > ? (class must have a sealed superclasses) > > I suggest to replace the details message with something like this: > > (class C does not have any sealed supertypes) > > [since I expect this message to be applicable also for superinterfaces] > > * PermitsCantListDeclaringClass > > test/langtools/tools/javac/diags/examples/PermitsCantListDeclaringClass.java:30: > error: invalid permits clause > sealed class C permits C {} > ?????????????????????? ^ > ? (must not include the declaring class: C) > > Here I recommend something like: > > (illegal self-reference in permits clause) > > * PermitsCantListSuperType > > test/langtools/tools/javac/diags/examples/PermitsCantListSuperType.java:32: > error: invalid permits clause > sealed class C implements I permits I {} > ??????????????????????????????????? ^ > ? (must not include a supertype: I) > > I suggest: > > (illegal reference to supertype I) > > * PermitsInNoSealedClass > > test/langtools/tools/javac/diags/examples/PermitsInNoSealedClass.java:30: > error: invalid permits clause > class C permits Sub {} > ??????? ^ > ? (class must be sealed) > > This is good, but I noted that if you change the test to use an > interface, the message still says "class" - the kindname should be > used here. > > * SealedMustHaveSubtypes > > test/langtools/tools/javac/diags/examples/SealedMustHaveSubtypes.java:29: > error: sealed class must have subclasses > sealed class Sealed {} > ?????? ^ > > I think this message reflects one of the main issues with the general > type vs. class dichotomy. A subclass, in JLS lingo is e.g. `B` where > `B extends A`. Interfaces do not play in the mix - they are not > considered subclasses. The word subtypes could be more general - but > again, it is a bit imprecise, since we're talking about declarations > here, not types. I'll defer this conundrum to our spec gurus :-) > > > Cheers > Maurizio > > > > On 18/05/2020 23:42, Vicente Romero wrote: >> Hi, >> >> Please review this patch for the compiler, javadoc and >> javax.lang.model support for the JEP 360 Sealed Classes (Preview). >> The changes are provided at [1], which implements the latest JLS for >> sealed types [2]. The patch also include the needed changes to >> javadoc and javax.lang.model to support sealed types. The CSR witht >> the changes in the javax.lang.model spec is at [3]. The sealed types >> JEP is accessible at [4]. There is an ongoing review for the VM and >> core-libs code of sealed types [5] and that code hasn't been included >> in this webrev, >> >> Thanks, >> Vicente >> >> [1] http://cr.openjdk.java.net/~vromero/8227046/webrev.00/ >> [2] >> http://cr.openjdk.java.net/~gbierman/jep360/jep360-20200513/specs/sealed-classes-jls.html >> >> [3] https://bugs.openjdk.java.net/browse/JDK-8244367 >> [4] https://openjdk.java.net/jeps/360 >> [5] >> https://mail.openjdk.java.net/pipermail/core-libs-dev/2020-May/066440.html From joe.darcy at oracle.com Fri May 22 19:13:24 2020 From: joe.darcy at oracle.com (Joe Darcy) Date: Fri, 22 May 2020 12:13:24 -0700 Subject: RFR: JDK-8227046: compiler implementation for sealed classes, JDK-8227047: Javadoc for sealed types and JDK-8227044: javax.lang.model for sealed classes In-Reply-To: <63e71ec7-3273-dec4-4d87-a49c754da6f3@oracle.com> References: <3bd27bea-b8a3-88a2-5536-ea9610749ce4@oracle.com> <63e71ec7-3273-dec4-4d87-a49c754da6f3@oracle.com> Message-ID: <65b69628-a515-b5d7-bc6b-fee04808ee18@oracle.com> On 5/21/2020 5:20 AM, Maurizio Cimadamore wrote: > > On 21/05/2020 06:31, Joe Darcy wrote: >> Hi Jan, >> >> On 5/19/2020 5:44 AM, Jan Lahoda wrote: >>> Hi Vicente, >>> >>> javac changes look overall OK to me. >>> >>> >> [snip] >> >> >>> -regarding TypeElement#getPermittedSubclasses: it currently returns >>> List; I wonder if returning List>> TypeElement> would be better? >>> >> I did discuss this design point with Vicente ahead of time. While we >> could probably get away with List here with the current >> design, I think List is more in keeping with >> TypeElement.getSuperclass returning a TypeMirror. > > What do you think, in general of the 'getPermittedSubclasses' name? > This term doesn't seem to apply to interfaces, as per section 8.1.4: > > " The optional extends clause in a normal class declaration specifies > the direct superclass of the current class. " > > ... > > "A class is said to be a direct subclass of its direct superclass. The > direct superclass is the class from whose implementation the > implementation of the current class is derived. " > > "The subclass relationship is the transitive closure of the direct > subclass relationship. A class A is a subclass of class C if either of > the following is true: > > ??? A is the direct subclass of C > > ??? There exists a class B such that A is a subclass of B, and B is a > subclass of C, applying this definition recursively. > When possible, as a design principle the javax.lang.model API aligns with the terminology usage in JLS. In the few cases where JLS doesn't provide needed terminology, the API steps out on its own, as with the name javax.lang.model.element.NestingKind. For the classes and interfaces a sealed class or interface permits, I think getPermittedSubtypes would be a reasonable name. However, uses "type" as a noun to mean "class or interface" is on the way out of the JLS. After first being named PermittedSubtypes, the class file attribute is now named "PermittedSubclasses " (JDK-8242578). The TypeElement interface is used to model both class and interface declarations so the same method will be used to retrieve the permitted information for both kinds of declarations. Candidate names for this method are: 1) getPermittedSubclasses -- not entirely accurate for interfaces 2) getPermittedSubtypes -- not aligned with current JLS usage 3) getPermittedClassesOrInteraces -- too long, even for javax.lang.model I view 1) and 2) as viable names for the method. Certainly before the change in "type" usage, I would have preferred 2); however, I think 1) is acceptable if the spec ?214????? * Returns the permitted classes of this type element in ?215????? * declaration order. is amended to discuss the permitted information for interfaces in some way. Thanks, -Joe From vicente.romero at oracle.com Sat May 23 01:03:06 2020 From: vicente.romero at oracle.com (Vicente Romero) Date: Fri, 22 May 2020 21:03:06 -0400 Subject: RFR: JDK-8227046: compiler implementation for sealed classes, JDK-8227047: Javadoc for sealed types and JDK-8227044: javax.lang.model for sealed classes In-Reply-To: <110dc24f-6f40-2425-375d-1d6fad091a46@oracle.com> References: <3bd27bea-b8a3-88a2-5536-ea9610749ce4@oracle.com> <110dc24f-6f40-2425-375d-1d6fad091a46@oracle.com> Message-ID: <5dfde490-b169-37bb-0eee-ca7fbe950a77@oracle.com> Hi Joe, On 5/21/20 1:21 AM, Joe Darcy wrote: > Hi Vicente, > > In PrintingProcessor, I believe the printModifers method should remove > "SEALED" from an enum, assuming the latest policy for enums discussed > in the JLS is implemented (tl;dr -- all enums that cannot be > implicitly final are implicitly sealed). done, have fixed this in my local copy, will send it for review with the next review iteration > > In > test/langtools/tools/javac/processing/model/element/TestSealed.java, > List expected might be better constructor from a text block. there are some string expressions at the end, the text is not static, so I would have to split the text block, add the variable String to it, etc, probably not worthy > Since SealedClassesProcessor extends JavacTestingAbstractProcessor, it > doesn't need to have be annotated with @SupportedAnnotationTypes("*") > or have a getSupportedSourceVersion method which returns latest since > that is built-into the parent class. done > > Thanks, > > -Joe Thanks, Vicente > > On 5/18/2020 3:42 PM, Vicente Romero wrote: >> Hi, >> >> Please review this patch for the compiler, javadoc and >> javax.lang.model support for the JEP 360 Sealed Classes (Preview). >> The changes are provided at [1], which implements the latest JLS for >> sealed types [2]. The patch also include the needed changes to >> javadoc and javax.lang.model to support sealed types. The CSR witht >> the changes in the javax.lang.model spec is at [3]. The sealed types >> JEP is accessible at [4]. There is an ongoing review for the VM and >> core-libs code of sealed types [5] and that code hasn't been included >> in this webrev, >> >> Thanks, >> Vicente >> >> [1] http://cr.openjdk.java.net/~vromero/8227046/webrev.00/ >> [2] >> http://cr.openjdk.java.net/~gbierman/jep360/jep360-20200513/specs/sealed-classes-jls.html >> >> [3] https://bugs.openjdk.java.net/browse/JDK-8244367 >> [4] https://openjdk.java.net/jeps/360 >> [5] >> https://mail.openjdk.java.net/pipermail/core-libs-dev/2020-May/066440.html From maurizio.cimadamore at oracle.com Mon May 25 09:41:53 2020 From: maurizio.cimadamore at oracle.com (Maurizio Cimadamore) Date: Mon, 25 May 2020 10:41:53 +0100 Subject: RFR: JDK-8227046: compiler implementation for sealed classes, JDK-8227047: Javadoc for sealed types and JDK-8227044: javax.lang.model for sealed classes In-Reply-To: <65b69628-a515-b5d7-bc6b-fee04808ee18@oracle.com> References: <3bd27bea-b8a3-88a2-5536-ea9610749ce4@oracle.com> <63e71ec7-3273-dec4-4d87-a49c754da6f3@oracle.com> <65b69628-a515-b5d7-bc6b-fee04808ee18@oracle.com> Message-ID: <5572c755-6a99-2e04-170f-20951eef3166@oracle.com> On 22/05/2020 20:13, Joe Darcy wrote: > 1) getPermittedSubclasses -- not entirely accurate for interfaces My opinion is that this is also not aligned with the JLS - although in a different way. Maurizio From maurizio.cimadamore at oracle.com Mon May 25 10:37:52 2020 From: maurizio.cimadamore at oracle.com (Maurizio Cimadamore) Date: Mon, 25 May 2020 11:37:52 +0100 Subject: RFR: JDK-8227046: compiler implementation for sealed classes, JDK-8227047: Javadoc for sealed types and JDK-8227044: javax.lang.model for sealed classes In-Reply-To: References: <3bd27bea-b8a3-88a2-5536-ea9610749ce4@oracle.com> <11f8828c-607e-e844-1ac6-5977a40c9a77@oracle.com> Message-ID: Hi, changes look good, but the parser changes do not convince me. Now that the logic is more clearly defined, I see some issues e.g. there seems to be a tight coupling by where "sealed" or "non-sealed" is, and the fact that the following token must be e.g. "class". This is unlike other modifiers which can in fact appear in any configuation. I believe that you can break the current logic by adding an extra annotation between the "sealed" token and the "class" token e.g. sealed @foo class Bar { } But maybe the quick fix would be to add MONKEY_AT to the set of expected tokens after sealed/non-sealed. Maurizio On 22/05/2020 19:25, Vicente Romero wrote: > Hi, > > Thanks Jan and Maurizio for the reviews. I have created another > iteration that I hope addresses all of the comments. I recognize that > dealing with `sealed`, `non-sealed` is the most complicated part as > there is no guide right now from the spec. So I have tried to make > them contextual keywords, for some informal definition of the concept, > I think that with more success for the `sealed` case. So going in more > detail this iteration includes: > > ?- ClassTree::getPermitsClause now returns `List.of()` > ?- Types::findDescriptorInternal has been modified to fail on sealed > interfaces > ?- several error messages have been updated as suggested, on this > front given that when a class list the same interface twice in the > implements clause, the second occurrence is the one flagged, I did the > same for repeated names in the permits clause > ?- modifications in ClassReader and ClassWriter as suggested > ?- JavacParser, the bulk of the changes are concentrated here, as > mentioned above the goal has been to try to implement the contextual > keyword thing and also give a nice error message in several corner > case situations detected in the reviews > ?- more tests were added > > Thanks, > Vicente > > On 5/21/20 8:14 AM, Maurizio Cimadamore wrote: >> Hi Vicente, >> looks very good. Some comments below. >> >> * the parser logic is clever in its use of position to apply >> context-dependent keyword detection; as Jan says, perhaps just share >> the code so that the position checks are not repeated. >> >> * I found one very edge-case quirk in the context-dependent logic; >> not sure how we wanna address: >> >> class Foo { >> ??? sealed m() {} >> } >> >> This fails with: >> >> Error: invalid method declaration; return type required >> >> As javac parses non-sealed as a modifier, and then expects a type. I >> think this is probably reasonable, but it's not as context-dependent >> as it could be I guess. >> >> * This case: >> >> class Bar { } >> sealed @interface Foo permits Bar >> >> Fails as expected, but only because Bar doesn't extends Foo. I >> believe we'd like to ban sealed on annotations more eagerly. Same for >> non-sealed. For enums and records (which are non-extensible) the >> compiler does the right thing and tells me that I can't just use >> sealed/non-sealed there. >> >> * The recovery logic in case preview features aren't enabled leaves >> something to be desired. For instance, if I compile this w/o >> --enable-preview: >> >> ?record Foo() {} >> >> I get a very sensible error: >> >> records are a preview feature and are disabled by default. >> ??? (use --enable-preview to enable records) >> >> However, if I compiler this w/o --enable-preview: >> >> sealed class Foo {} >> >> I get this: >> >> error: class, interface, or enum expected >> >> (no mention of preview features) >> >> It gets worse if I also specify a `permits`. >> >> * As Jan mentioned, type parameters on permitted types should be >> banned, not silently cleared in TypeEnter >> >> * Overall the type enter logic seems robust - I've tried several >> examples swapping superclass/subclass - using references to nested >> classes in supertype declaration, and it all works. Well done. >> >> * The error for lambda expressions leaves to be desired: >> >> sealed interface Action { >> ?void doAction(); >> } >> >> class Test { >> ? Action a = () -> { }; >> } >> >> Foo.java:6: error: class is not allowed to extend sealed class: Action >> ? Action a = () -> { }; >> ???????????? ^ >> >> I think a dedicated error here would be useful. >> >> >> * the same check is not applied to method references: >> >> >> class Test { >> >> ? Action a2 = Test::m; //no error >> >> ? static void m() { } >> } >> >> More generally, if a functional interface cannot be sealed, I think >> it would be better to inject the check in the functional interface >> check (e.g. Types::findDescriptorInternal) so that you won't need any >> extra code in Attr. This would also be more in spirit with the spec, >> where the non-sealedness check is defined in 9.8, not in section 15. >> >> * Pulling more on that string, the @FunctionalInterface annotation >> can be placed on a sealed interface and no error is issued >> >> * On ClassWriter - isn't calling adjustFlags() enough? That will >> truncate the long flags into an int - I think Flags.SEALED is bigger >> than that? >> >> >> // error messages >> >> * DuplicateTypesInPermits >> >> I suggest: >> >> test/langtools/tools/javac/diags/examples/DuplicateTypeInPermits.java:30: >> error: invalid permits clause >> sealed class Sealed permits Sub, Sub {} >> ??????????????????????????? ^ >> ? (repeated type: Sub) >> >> [this is consistent with the error we issues in other places - e.g. >> when you implements same interface twice] >> >> * NonSealedWithNoSealedSuper >> >> test/langtools/tools/javac/diags/examples/NonSealedWithNoSealedSuper.java:31: >> error: non-sealed modifier not allowed here >> non-sealed class Sub extends C {} >> ?????????? ^ >> ? (class must have a sealed superclasses) >> >> I suggest to replace the details message with something like this: >> >> (class C does not have any sealed supertypes) >> >> [since I expect this message to be applicable also for superinterfaces] >> >> * PermitsCantListDeclaringClass >> >> test/langtools/tools/javac/diags/examples/PermitsCantListDeclaringClass.java:30: >> error: invalid permits clause >> sealed class C permits C {} >> ?????????????????????? ^ >> ? (must not include the declaring class: C) >> >> Here I recommend something like: >> >> (illegal self-reference in permits clause) >> >> * PermitsCantListSuperType >> >> test/langtools/tools/javac/diags/examples/PermitsCantListSuperType.java:32: >> error: invalid permits clause >> sealed class C implements I permits I {} >> ??????????????????????????????????? ^ >> ? (must not include a supertype: I) >> >> I suggest: >> >> (illegal reference to supertype I) >> >> * PermitsInNoSealedClass >> >> test/langtools/tools/javac/diags/examples/PermitsInNoSealedClass.java:30: >> error: invalid permits clause >> class C permits Sub {} >> ??????? ^ >> ? (class must be sealed) >> >> This is good, but I noted that if you change the test to use an >> interface, the message still says "class" - the kindname should be >> used here. >> >> * SealedMustHaveSubtypes >> >> test/langtools/tools/javac/diags/examples/SealedMustHaveSubtypes.java:29: >> error: sealed class must have subclasses >> sealed class Sealed {} >> ?????? ^ >> >> I think this message reflects one of the main issues with the general >> type vs. class dichotomy. A subclass, in JLS lingo is e.g. `B` where >> `B extends A`. Interfaces do not play in the mix - they are not >> considered subclasses. The word subtypes could be more general - but >> again, it is a bit imprecise, since we're talking about declarations >> here, not types. I'll defer this conundrum to our spec gurus :-) >> >> >> Cheers >> Maurizio >> >> >> >> On 18/05/2020 23:42, Vicente Romero wrote: >>> Hi, >>> >>> Please review this patch for the compiler, javadoc and >>> javax.lang.model support for the JEP 360 Sealed Classes (Preview). >>> The changes are provided at [1], which implements the latest JLS for >>> sealed types [2]. The patch also include the needed changes to >>> javadoc and javax.lang.model to support sealed types. The CSR witht >>> the changes in the javax.lang.model spec is at [3]. The sealed types >>> JEP is accessible at [4]. There is an ongoing review for the VM and >>> core-libs code of sealed types [5] and that code hasn't been >>> included in this webrev, >>> >>> Thanks, >>> Vicente >>> >>> [1] http://cr.openjdk.java.net/~vromero/8227046/webrev.00/ >>> [2] >>> http://cr.openjdk.java.net/~gbierman/jep360/jep360-20200513/specs/sealed-classes-jls.html >>> >>> [3] https://bugs.openjdk.java.net/browse/JDK-8244367 >>> [4] https://openjdk.java.net/jeps/360 >>> [5] >>> https://mail.openjdk.java.net/pipermail/core-libs-dev/2020-May/066440.html > From jan.lahoda at oracle.com Mon May 25 14:35:00 2020 From: jan.lahoda at oracle.com (Jan Lahoda) Date: Mon, 25 May 2020 16:35:00 +0200 Subject: RFR: JDK-8210649: AssertionError @ jdk.compiler/com.sun.tools.javac.comp.Modules.enter(Modules.java:244) Message-ID: <23cbf086-8959-f865-1542-1f97decd810a@oracle.com> Hi, When tools call Diagnostics.getMessage after the compilation has already been stopped, the invocation may fail with an error, due to javac being in a wrong state. When javac is running annotation processors, after running the processors last time, it will clear all the internal structures. If an error has been reported and the compilation will stop, it will not re-initialize the structures again (it would re-initialize the structure if no error would be reported, and the compilation would continue). In general javac does not support doing queries after compilation finished. But, regarding handling Diagnostics in such cases, we've adjusted the code to allow queries to Diagnostics in the past. The proposal in this patch is to not clear the internal state if we know the compilation will not continue, keeping the last state. So printing the Diagnostics would still work. Webrev: http://cr.openjdk.java.net/~jlahoda/8210649/webrev.00/ JBS: https://bugs.openjdk.java.net/browse/JDK-8210649 How does this look? Thanks, Jan From vicente.romero at oracle.com Mon May 25 18:39:20 2020 From: vicente.romero at oracle.com (Vicente Romero) Date: Mon, 25 May 2020 14:39:20 -0400 Subject: RFR: 8241312 missing code coverage for records In-Reply-To: <3C0F5D0B-C0A1-4B37-BECE-0190790032AE@oracle.com> References: <3C0F5D0B-C0A1-4B37-BECE-0190790032AE@oracle.com> Message-ID: <25dd0f1f-e50d-beed-c343-e9938c9a89c3@oracle.com> Hi Adam, Thanks for fixing this, indentation looks odd at ApplicableAnnotationsOnRecords.java but apart from that it looks good, Vicente On 5/21/20 9:45 AM, Adam Sotona wrote: > Hi, > I would like to ask for review of the patch adding new tests to improve test coverage for records. > The patch adds: > - test for com.sun.tools.sjavac.comp.PubAPIs and com.sun.tools.sjavac.comp.PubapiVisitor > - test for com.sun.tools.javac.comp.Check::validateAnnotation, com.sun.tools.javac.code.SymbolMetadata::removeDeclarationMetadata and ::removeFromCompoundList > - test for javax.lang.model.util.ElementFilter::recordComponentsIn > > The patch however does not resolve comment about potentially dead code fragment of Lower::visitRecordDefalso described in JDK-8241312 . I was not able to reach that code by tests, however I'm unable to confirm that it is a dead code. > > JBS: https://bugs.openjdk.java.net/browse/JDK-8241312 > webrev: http://cr.openjdk.java.net/~asotona/8241312/webrev.00/ > > Mach 5 build with the patch passes all Tier1, Tier2 and Tier3 tests. > > > Thank you, > Adam From vicente.romero at oracle.com Mon May 25 19:24:24 2020 From: vicente.romero at oracle.com (Vicente Romero) Date: Mon, 25 May 2020 15:24:24 -0400 Subject: RFR: JDK-8210649: AssertionError @ jdk.compiler/com.sun.tools.javac.comp.Modules.enter(Modules.java:244) In-Reply-To: <23cbf086-8959-f865-1542-1f97decd810a@oracle.com> References: <23cbf086-8959-f865-1542-1f97decd810a@oracle.com> Message-ID: <64580526-75bd-0005-2ce8-f245d4dc07b6@oracle.com> looks good, Vicente On 5/25/20 10:35 AM, Jan Lahoda wrote: > Hi, > > When tools call Diagnostics.getMessage after the compilation has > already been stopped, the invocation may fail with an error, due to > javac being in a wrong state. When javac is running annotation > processors, after running the processors last time, it will clear all > the internal structures. If an error has been reported and the > compilation will stop, it will not re-initialize the structures again > (it would re-initialize the structure if no error would be reported, > and the compilation would continue). > > In general javac does not support doing queries after compilation > finished. But, regarding handling Diagnostics in such cases, we've > adjusted the code to allow queries to Diagnostics in the past. > > The proposal in this patch is to not clear the internal state if we > know the compilation will not continue, keeping the last state. So > printing the Diagnostics would still work. > > Webrev: http://cr.openjdk.java.net/~jlahoda/8210649/webrev.00/ > JBS: https://bugs.openjdk.java.net/browse/JDK-8210649 > > How does this look? > > Thanks, > ??? Jan From vicente.romero at oracle.com Tue May 26 04:14:33 2020 From: vicente.romero at oracle.com (Vicente Romero) Date: Mon, 25 May 2020 21:14:33 -0700 (PDT) Subject: RFR: JDK-8227046: compiler implementation for sealed classes, JDK-8227047: Javadoc for sealed types and JDK-8227044: javax.lang.model for sealed classes In-Reply-To: References: <3bd27bea-b8a3-88a2-5536-ea9610749ce4@oracle.com> <11f8828c-607e-e844-1ac6-5977a40c9a77@oracle.com> Message-ID: Hi Maurizio, Right good catch I forgot to add the MONKEY_AT to the list of expected tokens. I have fixed that. I have published another iteration at [1]. Apart from the MONKEY_AT issue addressed at the parser this iteration also: ?- adds another error key to compiler.properties, this new key is oriented to show a more explicit error message when an interface with no `non-sealed` or `sealed` modifier extends a sealed interface. A class in this position can also be `final` but this is not possible for interfaces. ?- changes to PrintingProcessor and to test/langtools/tools/javac/processing/model/element/TestSealed.java suggested by Joe in this thread ?- adds a new subtest at SealedCompilationTests testing the sealed and non-sealed modifiers being followed by different modifiers or annotations ?- modified a subtest also at SealedCompilationTests, testPrinting, that was failing on Windows Thanks, Vicente [1] http://cr.openjdk.java.net/~vromero/8227046/webrev.03.delta/ On 5/25/20 6:37 AM, Maurizio Cimadamore wrote: > Hi, > changes look good, but the parser changes do not convince me. Now that > the logic is more clearly defined, I see some issues e.g. there seems > to be a tight coupling by where "sealed" or "non-sealed" is, and the > fact that the following token must be e.g. "class". This is unlike > other modifiers which can in fact appear in any configuation. > > I believe that you can break the current logic by adding an extra > annotation between the "sealed" token and the "class" token e.g. > > sealed @foo class Bar { } > > But maybe the quick fix would be to add MONKEY_AT to the set of > expected tokens after sealed/non-sealed. > > Maurizio > > > On 22/05/2020 19:25, Vicente Romero wrote: >> Hi, >> >> Thanks Jan and Maurizio for the reviews. I have created another >> iteration that I hope addresses all of the comments. I recognize that >> dealing with `sealed`, `non-sealed` is the most complicated part as >> there is no guide right now from the spec. So I have tried to make >> them contextual keywords, for some informal definition of the >> concept, I think that with more success for the `sealed` case. So >> going in more detail this iteration includes: >> >> ?- ClassTree::getPermitsClause now returns `List.of()` >> ?- Types::findDescriptorInternal has been modified to fail on sealed >> interfaces >> ?- several error messages have been updated as suggested, on this >> front given that when a class list the same interface twice in the >> implements clause, the second occurrence is the one flagged, I did >> the same for repeated names in the permits clause >> ?- modifications in ClassReader and ClassWriter as suggested >> ?- JavacParser, the bulk of the changes are concentrated here, as >> mentioned above the goal has been to try to implement the contextual >> keyword thing and also give a nice error message in several corner >> case situations detected in the reviews >> ?- more tests were added >> >> Thanks, >> Vicente >> >> On 5/21/20 8:14 AM, Maurizio Cimadamore wrote: >>> Hi Vicente, >>> looks very good. Some comments below. >>> >>> * the parser logic is clever in its use of position to apply >>> context-dependent keyword detection; as Jan says, perhaps just share >>> the code so that the position checks are not repeated. >>> >>> * I found one very edge-case quirk in the context-dependent logic; >>> not sure how we wanna address: >>> >>> class Foo { >>> ??? sealed m() {} >>> } >>> >>> This fails with: >>> >>> Error: invalid method declaration; return type required >>> >>> As javac parses non-sealed as a modifier, and then expects a type. I >>> think this is probably reasonable, but it's not as context-dependent >>> as it could be I guess. >>> >>> * This case: >>> >>> class Bar { } >>> sealed @interface Foo permits Bar >>> >>> Fails as expected, but only because Bar doesn't extends Foo. I >>> believe we'd like to ban sealed on annotations more eagerly. Same >>> for non-sealed. For enums and records (which are non-extensible) the >>> compiler does the right thing and tells me that I can't just use >>> sealed/non-sealed there. >>> >>> * The recovery logic in case preview features aren't enabled leaves >>> something to be desired. For instance, if I compile this w/o >>> --enable-preview: >>> >>> ?record Foo() {} >>> >>> I get a very sensible error: >>> >>> records are a preview feature and are disabled by default. >>> ??? (use --enable-preview to enable records) >>> >>> However, if I compiler this w/o --enable-preview: >>> >>> sealed class Foo {} >>> >>> I get this: >>> >>> error: class, interface, or enum expected >>> >>> (no mention of preview features) >>> >>> It gets worse if I also specify a `permits`. >>> >>> * As Jan mentioned, type parameters on permitted types should be >>> banned, not silently cleared in TypeEnter >>> >>> * Overall the type enter logic seems robust - I've tried several >>> examples swapping superclass/subclass - using references to nested >>> classes in supertype declaration, and it all works. Well done. >>> >>> * The error for lambda expressions leaves to be desired: >>> >>> sealed interface Action { >>> ?void doAction(); >>> } >>> >>> class Test { >>> ? Action a = () -> { }; >>> } >>> >>> Foo.java:6: error: class is not allowed to extend sealed class: Action >>> ? Action a = () -> { }; >>> ???????????? ^ >>> >>> I think a dedicated error here would be useful. >>> >>> >>> * the same check is not applied to method references: >>> >>> >>> class Test { >>> >>> ? Action a2 = Test::m; //no error >>> >>> ? static void m() { } >>> } >>> >>> More generally, if a functional interface cannot be sealed, I think >>> it would be better to inject the check in the functional interface >>> check (e.g. Types::findDescriptorInternal) so that you won't need >>> any extra code in Attr. This would also be more in spirit with the >>> spec, where the non-sealedness check is defined in 9.8, not in >>> section 15. >>> >>> * Pulling more on that string, the @FunctionalInterface annotation >>> can be placed on a sealed interface and no error is issued >>> >>> * On ClassWriter - isn't calling adjustFlags() enough? That will >>> truncate the long flags into an int - I think Flags.SEALED is bigger >>> than that? >>> >>> >>> // error messages >>> >>> * DuplicateTypesInPermits >>> >>> I suggest: >>> >>> test/langtools/tools/javac/diags/examples/DuplicateTypeInPermits.java:30: >>> error: invalid permits clause >>> sealed class Sealed permits Sub, Sub {} >>> ??????????????????????????? ^ >>> ? (repeated type: Sub) >>> >>> [this is consistent with the error we issues in other places - e.g. >>> when you implements same interface twice] >>> >>> * NonSealedWithNoSealedSuper >>> >>> test/langtools/tools/javac/diags/examples/NonSealedWithNoSealedSuper.java:31: >>> error: non-sealed modifier not allowed here >>> non-sealed class Sub extends C {} >>> ?????????? ^ >>> ? (class must have a sealed superclasses) >>> >>> I suggest to replace the details message with something like this: >>> >>> (class C does not have any sealed supertypes) >>> >>> [since I expect this message to be applicable also for superinterfaces] >>> >>> * PermitsCantListDeclaringClass >>> >>> test/langtools/tools/javac/diags/examples/PermitsCantListDeclaringClass.java:30: >>> error: invalid permits clause >>> sealed class C permits C {} >>> ?????????????????????? ^ >>> ? (must not include the declaring class: C) >>> >>> Here I recommend something like: >>> >>> (illegal self-reference in permits clause) >>> >>> * PermitsCantListSuperType >>> >>> test/langtools/tools/javac/diags/examples/PermitsCantListSuperType.java:32: >>> error: invalid permits clause >>> sealed class C implements I permits I {} >>> ??????????????????????????????????? ^ >>> ? (must not include a supertype: I) >>> >>> I suggest: >>> >>> (illegal reference to supertype I) >>> >>> * PermitsInNoSealedClass >>> >>> test/langtools/tools/javac/diags/examples/PermitsInNoSealedClass.java:30: >>> error: invalid permits clause >>> class C permits Sub {} >>> ??????? ^ >>> ? (class must be sealed) >>> >>> This is good, but I noted that if you change the test to use an >>> interface, the message still says "class" - the kindname should be >>> used here. >>> >>> * SealedMustHaveSubtypes >>> >>> test/langtools/tools/javac/diags/examples/SealedMustHaveSubtypes.java:29: >>> error: sealed class must have subclasses >>> sealed class Sealed {} >>> ?????? ^ >>> >>> I think this message reflects one of the main issues with the >>> general type vs. class dichotomy. A subclass, in JLS lingo is e.g. >>> `B` where `B extends A`. Interfaces do not play in the mix - they >>> are not considered subclasses. The word subtypes could be more >>> general - but again, it is a bit imprecise, since we're talking >>> about declarations here, not types. I'll defer this conundrum to our >>> spec gurus :-) >>> >>> >>> Cheers >>> Maurizio >>> >>> >>> >>> On 18/05/2020 23:42, Vicente Romero wrote: >>>> Hi, >>>> >>>> Please review this patch for the compiler, javadoc and >>>> javax.lang.model support for the JEP 360 Sealed Classes (Preview). >>>> The changes are provided at [1], which implements the latest JLS >>>> for sealed types [2]. The patch also include the needed changes to >>>> javadoc and javax.lang.model to support sealed types. The CSR witht >>>> the changes in the javax.lang.model spec is at [3]. The sealed >>>> types JEP is accessible at [4]. There is an ongoing review for the >>>> VM and core-libs code of sealed types [5] and that code hasn't been >>>> included in this webrev, >>>> >>>> Thanks, >>>> Vicente >>>> >>>> [1] http://cr.openjdk.java.net/~vromero/8227046/webrev.00/ >>>> [2] >>>> http://cr.openjdk.java.net/~gbierman/jep360/jep360-20200513/specs/sealed-classes-jls.html >>>> >>>> [3] https://bugs.openjdk.java.net/browse/JDK-8244367 >>>> [4] https://openjdk.java.net/jeps/360 >>>> [5] >>>> https://mail.openjdk.java.net/pipermail/core-libs-dev/2020-May/066440.html >> From vicente.romero at oracle.com Tue May 26 04:20:37 2020 From: vicente.romero at oracle.com (Vicente Romero) Date: Tue, 26 May 2020 00:20:37 -0400 Subject: RFR: 8244573 java.lang.ArrayIndexOutOfBoundsException thrown for malformed class file In-Reply-To: <3A56AC06-EFBF-49D1-9081-FF203C57B324@oracle.com> References: <0E30689B-28E9-41EF-9EB5-BC5E2D51CD44@oracle.com> <5ddb2fce-f310-565d-70fc-8fd73995512e@oracle.com> <3A56AC06-EFBF-49D1-9081-FF203C57B324@oracle.com> Message-ID: <867907ad-42fe-32ca-59c7-99effea5eadc@oracle.com> looks good, Vicente On 5/18/20 5:28 AM, Adam Sotona wrote: > I've also added corresponding test using jcod-generated > Malformed.class (thanks Vicente for your suggestion): > > webrev: http://cr.openjdk.java.net/~asotona/8244573/webrev.01/ > JBS: https://bugs.openjdk.java.net/browse/JDK-8244573 > > Thanks for the review, > Adam > > >> On 15 May 2020, at 16:36, Jonathan Gibbons >> > wrote: >> >> +1 >> >> -- Jon >> >> On 5/15/20 6:05 AM, Adam Sotona wrote: >>> Hi, >>> I would like to ask for review of the patch fixing javap >>> java.lang.ArrayIndexOutOfBoundsException in >>> com.sun.tools.classfile.Code_attribute.getInstructions() for methods >>> with no instructions. >>> >>> JBS: https://bugs.openjdk.java.net/browse/JDK-8244573 >>> webrev: http://cr.openjdk.java.net/~asotona/8244573/webrev.00/ >>> >>> Mach 5 build with the patch passes all Tier1, Tier2 and Tier3 tests. >>> >>> Thank you, >>> Adam > -------------- next part -------------- An HTML attachment was scrubbed... URL: From adam.sotona at oracle.com Tue May 26 04:58:22 2020 From: adam.sotona at oracle.com (Adam Sotona) Date: Tue, 26 May 2020 06:58:22 +0200 Subject: RFR: 8241312 missing code coverage for records In-Reply-To: <25dd0f1f-e50d-beed-c343-e9938c9a89c3@oracle.com> References: <3C0F5D0B-C0A1-4B37-BECE-0190790032AE@oracle.com> <25dd0f1f-e50d-beed-c343-e9938c9a89c3@oracle.com> Message-ID: <7E691204-FDBA-4C77-8372-83C87FBCD4C5@oracle.com> Hi Vicente, thanks for the review, I've fixed the formatting of ApplicableAnnotationsOnRecords and created changeset version of the webrev here: http://cr.openjdk.java.net/~asotona/8241312/webrev.01/ May I ask you for integration of the changeset? Thank you, Adam > On 25 May 2020, at 20:39, Vicente Romero wrote: > > Hi Adam, > > Thanks for fixing this, indentation looks odd at ApplicableAnnotationsOnRecords.java but apart from that it looks good, > > Vicente > > > On 5/21/20 9:45 AM, Adam Sotona wrote: >> Hi, >> I would like to ask for review of the patch adding new tests to improve test coverage for records. >> The patch adds: >> - test for com.sun.tools.sjavac.comp.PubAPIs and com.sun.tools.sjavac.comp.PubapiVisitor >> - test for com.sun.tools.javac.comp.Check::validateAnnotation, com.sun.tools.javac.code.SymbolMetadata::removeDeclarationMetadata and ::removeFromCompoundList >> - test for javax.lang.model.util.ElementFilter::recordComponentsIn >> >> The patch however does not resolve comment about potentially dead code fragment of Lower::visitRecordDefalso described in JDK-8241312 . I was not able to reach that code by tests, however I'm unable to confirm that it is a dead code. >> >> JBS: https://bugs.openjdk.java.net/browse/JDK-8241312 >> webrev: http://cr.openjdk.java.net/~asotona/8241312/webrev.00/ >> >> Mach 5 build with the patch passes all Tier1, Tier2 and Tier3 tests. >> >> >> Thank you, >> Adam > From adam.sotona at oracle.com Tue May 26 05:36:17 2020 From: adam.sotona at oracle.com (Adam Sotona) Date: Tue, 26 May 2020 07:36:17 +0200 Subject: RFR: 8244573 java.lang.ArrayIndexOutOfBoundsException thrown for malformed class file In-Reply-To: <867907ad-42fe-32ca-59c7-99effea5eadc@oracle.com> References: <0E30689B-28E9-41EF-9EB5-BC5E2D51CD44@oracle.com> <5ddb2fce-f310-565d-70fc-8fd73995512e@oracle.com> <3A56AC06-EFBF-49D1-9081-FF203C57B324@oracle.com> <867907ad-42fe-32ca-59c7-99effea5eadc@oracle.com> Message-ID: <689B5270-AC32-41A9-ACF9-DDF6FB45040F@oracle.com> Hi Vicente, thanks for the review, may I ask you to integrate the changeset, here is the changeset version of the webrev: http://cr.openjdk.java.net/~asotona/8244573/webrev.02/ Thank you, Adam > On 26 May 2020, at 06:20, Vicente Romero wrote: > > looks good, > Vicente > > On 5/18/20 5:28 AM, Adam Sotona wrote: >> I've also added corresponding test using jcod-generated Malformed.class (thanks Vicente for your suggestion): >> >> webrev: http://cr.openjdk.java.net/~asotona/8244573/webrev.01/ >> JBS: https://bugs.openjdk.java.net/browse/JDK-8244573 >> >> >> Thanks for the review, >> Adam >> >> >>> On 15 May 2020, at 16:36, Jonathan Gibbons > wrote: >>> >>> +1 >>> >>> -- Jon >>> >>> On 5/15/20 6:05 AM, Adam Sotona wrote: >>>> Hi, >>>> I would like to ask for review of the patch fixing javap java.lang.ArrayIndexOutOfBoundsException in com.sun.tools.classfile.Code_attribute.getInstructions() for methods with no instructions. >>>> >>>> JBS: https://bugs.openjdk.java.net/browse/JDK-8244573 >>>> webrev: http://cr.openjdk.java.net/~asotona/8244573/webrev.00/ >>>> >>>> Mach 5 build with the patch passes all Tier1, Tier2 and Tier3 tests. >>>> >>>> Thank you, >>>> Adam >> > -------------- next part -------------- An HTML attachment was scrubbed... URL: From adam.sotona at oracle.com Tue May 26 06:08:13 2020 From: adam.sotona at oracle.com (Adam Sotona) Date: Tue, 26 May 2020 08:08:13 +0200 Subject: RFR: 8230827 javac gives inappropriate warning about potentially ambiguous methods Message-ID: Hi, I would like to ask for review of the patch fixing com.sun.tools.javac.comp.Comp:checkPotentiallyAmbiguousOverloads. The actual implementation is too strict and is warning about ambiguous methods even they differ in following parameters. Plus I've created a test for ambiguous and non-ambiguous cases. JBS: https://bugs.openjdk.java.net/browse/JDK-8230827 webrev: http://cr.openjdk.java.net/~asotona/8230827/webrev.00/ Mach 5 build with the patch passes all Tier 1 and Tier 2 tests. Several unrelated Tier 3 tests are actually failing. Thanks for the review, Adam From maurizio.cimadamore at oracle.com Tue May 26 14:48:48 2020 From: maurizio.cimadamore at oracle.com (Maurizio Cimadamore) Date: Tue, 26 May 2020 15:48:48 +0100 Subject: RFR: JDK-8227046: compiler implementation for sealed classes, JDK-8227047: Javadoc for sealed types and JDK-8227044: javax.lang.model for sealed classes In-Reply-To: References: <3bd27bea-b8a3-88a2-5536-ea9610749ce4@oracle.com> <11f8828c-607e-e844-1ac6-5977a40c9a77@oracle.com> Message-ID: <255648e6-8aa3-d09f-cff6-98af5b5509e3@oracle.com> Looks good. For the diagnostic, longer term it would be nice to generalize those: # 0: token, 1: token 2168 compiler.err.expected2=\ 2169 {0} or {1} expected 2170 2171 # 0: token, 1: token, 2: token 2172 compiler.err.expected3=\ 2173 {0}, {1}, or {2} expected 2174 2175 # 0: token, 1: token, 2: token, 3: string 2176 compiler.err.expected4=\ 2177 {0}, {1}, {2}, or {3} expected 2178 To work on more argument kinds (since you need the same thing). I would at leas attempt to follow the same text as in the other diagnostics - I don't see "one of:" being used anywhere else in compiler.properties. Maurizio On 26/05/2020 05:14, Vicente Romero wrote: > Hi Maurizio, > > Right good catch I forgot to add the MONKEY_AT to the list of expected > tokens. I have fixed that. I have published another iteration at [1]. > Apart from the MONKEY_AT issue addressed at the parser this iteration > also: > > ?- adds another error key to compiler.properties, this new key is > oriented to show a more explicit error message when an interface with > no `non-sealed` or `sealed` modifier extends a sealed interface. A > class in this position can also be `final` but this is not possible > for interfaces. > ?- changes to PrintingProcessor and to > test/langtools/tools/javac/processing/model/element/TestSealed.java > suggested by Joe in this thread > ?- adds a new subtest at SealedCompilationTests testing the sealed and > non-sealed modifiers being followed by different modifiers or annotations > ?- modified a subtest also at SealedCompilationTests, testPrinting, > that was failing on Windows > > Thanks, > Vicente > > [1] http://cr.openjdk.java.net/~vromero/8227046/webrev.03.delta/ > > On 5/25/20 6:37 AM, Maurizio Cimadamore wrote: >> Hi, >> changes look good, but the parser changes do not convince me. Now >> that the logic is more clearly defined, I see some issues e.g. there >> seems to be a tight coupling by where "sealed" or "non-sealed" is, >> and the fact that the following token must be e.g. "class". This is >> unlike other modifiers which can in fact appear in any configuation. >> >> I believe that you can break the current logic by adding an extra >> annotation between the "sealed" token and the "class" token e.g. >> >> sealed @foo class Bar { } >> >> But maybe the quick fix would be to add MONKEY_AT to the set of >> expected tokens after sealed/non-sealed. >> >> Maurizio >> >> >> On 22/05/2020 19:25, Vicente Romero wrote: >>> Hi, >>> >>> Thanks Jan and Maurizio for the reviews. I have created another >>> iteration that I hope addresses all of the comments. I recognize >>> that dealing with `sealed`, `non-sealed` is the most complicated >>> part as there is no guide right now from the spec. So I have tried >>> to make them contextual keywords, for some informal definition of >>> the concept, I think that with more success for the `sealed` case. >>> So going in more detail this iteration includes: >>> >>> ?- ClassTree::getPermitsClause now returns `List.of()` >>> ?- Types::findDescriptorInternal has been modified to fail on sealed >>> interfaces >>> ?- several error messages have been updated as suggested, on this >>> front given that when a class list the same interface twice in the >>> implements clause, the second occurrence is the one flagged, I did >>> the same for repeated names in the permits clause >>> ?- modifications in ClassReader and ClassWriter as suggested >>> ?- JavacParser, the bulk of the changes are concentrated here, as >>> mentioned above the goal has been to try to implement the contextual >>> keyword thing and also give a nice error message in several corner >>> case situations detected in the reviews >>> ?- more tests were added >>> >>> Thanks, >>> Vicente >>> >>> On 5/21/20 8:14 AM, Maurizio Cimadamore wrote: >>>> Hi Vicente, >>>> looks very good. Some comments below. >>>> >>>> * the parser logic is clever in its use of position to apply >>>> context-dependent keyword detection; as Jan says, perhaps just >>>> share the code so that the position checks are not repeated. >>>> >>>> * I found one very edge-case quirk in the context-dependent logic; >>>> not sure how we wanna address: >>>> >>>> class Foo { >>>> ??? sealed m() {} >>>> } >>>> >>>> This fails with: >>>> >>>> Error: invalid method declaration; return type required >>>> >>>> As javac parses non-sealed as a modifier, and then expects a type. >>>> I think this is probably reasonable, but it's not as >>>> context-dependent as it could be I guess. >>>> >>>> * This case: >>>> >>>> class Bar { } >>>> sealed @interface Foo permits Bar >>>> >>>> Fails as expected, but only because Bar doesn't extends Foo. I >>>> believe we'd like to ban sealed on annotations more eagerly. Same >>>> for non-sealed. For enums and records (which are non-extensible) >>>> the compiler does the right thing and tells me that I can't just >>>> use sealed/non-sealed there. >>>> >>>> * The recovery logic in case preview features aren't enabled leaves >>>> something to be desired. For instance, if I compile this w/o >>>> --enable-preview: >>>> >>>> ?record Foo() {} >>>> >>>> I get a very sensible error: >>>> >>>> records are a preview feature and are disabled by default. >>>> ??? (use --enable-preview to enable records) >>>> >>>> However, if I compiler this w/o --enable-preview: >>>> >>>> sealed class Foo {} >>>> >>>> I get this: >>>> >>>> error: class, interface, or enum expected >>>> >>>> (no mention of preview features) >>>> >>>> It gets worse if I also specify a `permits`. >>>> >>>> * As Jan mentioned, type parameters on permitted types should be >>>> banned, not silently cleared in TypeEnter >>>> >>>> * Overall the type enter logic seems robust - I've tried several >>>> examples swapping superclass/subclass - using references to nested >>>> classes in supertype declaration, and it all works. Well done. >>>> >>>> * The error for lambda expressions leaves to be desired: >>>> >>>> sealed interface Action { >>>> ?void doAction(); >>>> } >>>> >>>> class Test { >>>> ? Action a = () -> { }; >>>> } >>>> >>>> Foo.java:6: error: class is not allowed to extend sealed class: Action >>>> ? Action a = () -> { }; >>>> ???????????? ^ >>>> >>>> I think a dedicated error here would be useful. >>>> >>>> >>>> * the same check is not applied to method references: >>>> >>>> >>>> class Test { >>>> >>>> ? Action a2 = Test::m; //no error >>>> >>>> ? static void m() { } >>>> } >>>> >>>> More generally, if a functional interface cannot be sealed, I think >>>> it would be better to inject the check in the functional interface >>>> check (e.g. Types::findDescriptorInternal) so that you won't need >>>> any extra code in Attr. This would also be more in spirit with the >>>> spec, where the non-sealedness check is defined in 9.8, not in >>>> section 15. >>>> >>>> * Pulling more on that string, the @FunctionalInterface annotation >>>> can be placed on a sealed interface and no error is issued >>>> >>>> * On ClassWriter - isn't calling adjustFlags() enough? That will >>>> truncate the long flags into an int - I think Flags.SEALED is >>>> bigger than that? >>>> >>>> >>>> // error messages >>>> >>>> * DuplicateTypesInPermits >>>> >>>> I suggest: >>>> >>>> test/langtools/tools/javac/diags/examples/DuplicateTypeInPermits.java:30: >>>> error: invalid permits clause >>>> sealed class Sealed permits Sub, Sub {} >>>> ??????????????????????????? ^ >>>> ? (repeated type: Sub) >>>> >>>> [this is consistent with the error we issues in other places - e.g. >>>> when you implements same interface twice] >>>> >>>> * NonSealedWithNoSealedSuper >>>> >>>> test/langtools/tools/javac/diags/examples/NonSealedWithNoSealedSuper.java:31: >>>> error: non-sealed modifier not allowed here >>>> non-sealed class Sub extends C {} >>>> ?????????? ^ >>>> ? (class must have a sealed superclasses) >>>> >>>> I suggest to replace the details message with something like this: >>>> >>>> (class C does not have any sealed supertypes) >>>> >>>> [since I expect this message to be applicable also for >>>> superinterfaces] >>>> >>>> * PermitsCantListDeclaringClass >>>> >>>> test/langtools/tools/javac/diags/examples/PermitsCantListDeclaringClass.java:30: >>>> error: invalid permits clause >>>> sealed class C permits C {} >>>> ?????????????????????? ^ >>>> ? (must not include the declaring class: C) >>>> >>>> Here I recommend something like: >>>> >>>> (illegal self-reference in permits clause) >>>> >>>> * PermitsCantListSuperType >>>> >>>> test/langtools/tools/javac/diags/examples/PermitsCantListSuperType.java:32: >>>> error: invalid permits clause >>>> sealed class C implements I permits I {} >>>> ??????????????????????????????????? ^ >>>> ? (must not include a supertype: I) >>>> >>>> I suggest: >>>> >>>> (illegal reference to supertype I) >>>> >>>> * PermitsInNoSealedClass >>>> >>>> test/langtools/tools/javac/diags/examples/PermitsInNoSealedClass.java:30: >>>> error: invalid permits clause >>>> class C permits Sub {} >>>> ??????? ^ >>>> ? (class must be sealed) >>>> >>>> This is good, but I noted that if you change the test to use an >>>> interface, the message still says "class" - the kindname should be >>>> used here. >>>> >>>> * SealedMustHaveSubtypes >>>> >>>> test/langtools/tools/javac/diags/examples/SealedMustHaveSubtypes.java:29: >>>> error: sealed class must have subclasses >>>> sealed class Sealed {} >>>> ?????? ^ >>>> >>>> I think this message reflects one of the main issues with the >>>> general type vs. class dichotomy. A subclass, in JLS lingo is e.g. >>>> `B` where `B extends A`. Interfaces do not play in the mix - they >>>> are not considered subclasses. The word subtypes could be more >>>> general - but again, it is a bit imprecise, since we're talking >>>> about declarations here, not types. I'll defer this conundrum to >>>> our spec gurus :-) >>>> >>>> >>>> Cheers >>>> Maurizio >>>> >>>> >>>> >>>> On 18/05/2020 23:42, Vicente Romero wrote: >>>>> Hi, >>>>> >>>>> Please review this patch for the compiler, javadoc and >>>>> javax.lang.model support for the JEP 360 Sealed Classes (Preview). >>>>> The changes are provided at [1], which implements the latest JLS >>>>> for sealed types [2]. The patch also include the needed changes to >>>>> javadoc and javax.lang.model to support sealed types. The CSR >>>>> witht the changes in the javax.lang.model spec is at [3]. The >>>>> sealed types JEP is accessible at [4]. There is an ongoing review >>>>> for the VM and core-libs code of sealed types [5] and that code >>>>> hasn't been included in this webrev, >>>>> >>>>> Thanks, >>>>> Vicente >>>>> >>>>> [1] http://cr.openjdk.java.net/~vromero/8227046/webrev.00/ >>>>> [2] >>>>> http://cr.openjdk.java.net/~gbierman/jep360/jep360-20200513/specs/sealed-classes-jls.html >>>>> >>>>> [3] https://bugs.openjdk.java.net/browse/JDK-8244367 >>>>> [4] https://openjdk.java.net/jeps/360 >>>>> [5] >>>>> https://mail.openjdk.java.net/pipermail/core-libs-dev/2020-May/066440.html >>> > -------------- next part -------------- An HTML attachment was scrubbed... URL: From jonathan.gibbons at oracle.com Tue May 26 18:26:38 2020 From: jonathan.gibbons at oracle.com (Jonathan Gibbons) Date: Tue, 26 May 2020 11:26:38 -0700 Subject: RFR: JDK-8245847 Update Profile.java to not require per-release updates Message-ID: Please review a small change to the implementation of Profile.java so that it does not have to be updated on each release. Although Profile.java theoretically permitted the use of profiles for targets >= 8, they were effectively restricted by additional checks elsewhere in java, in Arguments.java. Long term, the expectation is that support for profiles will be deprecated (JDK-8245246) and eventually removed (JDK-8245247.) -- Jon JBS: https://bugs.openjdk.java.net/browse/JDK-8245847 Webrev: http://cr.openjdk.java.net/~jjg/8245847/webrev.00/index.html From joe.darcy at oracle.com Tue May 26 18:35:50 2020 From: joe.darcy at oracle.com (Joe Darcy) Date: Tue, 26 May 2020 11:35:50 -0700 Subject: RFR: JDK-8245847 Update Profile.java to not require per-release updates In-Reply-To: References: Message-ID: Looks fine Jon; thanks, -Joe On 5/26/2020 11:26 AM, Jonathan Gibbons wrote: > Please review a small change to the implementation of Profile.java > so that it does not have to be updated on each release. > > Although Profile.java theoretically permitted the use of profiles for > targets >= 8, they were effectively restricted by additional checks > elsewhere in java, in Arguments.java. > > Long term, the expectation is that support for profiles will be > deprecated > (JDK-8245246) and eventually removed (JDK-8245247.) > > -- Jon > > JBS: https://bugs.openjdk.java.net/browse/JDK-8245847 > Webrev: http://cr.openjdk.java.net/~jjg/8245847/webrev.00/index.html > From pavel.rappo at oracle.com Tue May 26 19:59:22 2020 From: pavel.rappo at oracle.com (Pavel Rappo) Date: Tue, 26 May 2020 20:59:22 +0100 Subject: RFR [15] 8245841: Remove unused com.sun.tools.javac.comp.Modules.XMODULES_PREFIX Message-ID: Please review this trivial patch: diff --git a/src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Modules.java b/src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Modules.java --- a/src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Modules.java +++ b/src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Modules.java @@ -215,8 +215,6 @@ limitModsOpt = options.get(Option.LIMIT_MODULES); moduleVersionOpt = options.get(Option.MODULE_VERSION); } - //where - private static final String XMODULES_PREFIX = "-Xmodule:"; int depth = -1; My IDE shows that this field is unused and the tests on our CI system agree with it. The field is probably a leftover from "8182162: Remove -XD-Xmodule". -Pavel From jonathan.gibbons at oracle.com Tue May 26 20:03:07 2020 From: jonathan.gibbons at oracle.com (Jonathan Gibbons) Date: Tue, 26 May 2020 13:03:07 -0700 Subject: RFR [15] 8245841: Remove unused com.sun.tools.javac.comp.Modules.XMODULES_PREFIX In-Reply-To: References: Message-ID: <437a20fc-8b15-e447-c179-eeef418f8880@oracle.com> +1 -- Jon On 5/26/20 12:59 PM, Pavel Rappo wrote: > Please review this trivial patch: > > diff --git a/src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Modules.java b/src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Modules.java > --- a/src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Modules.java > +++ b/src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Modules.java > @@ -215,8 +215,6 @@ > limitModsOpt = options.get(Option.LIMIT_MODULES); > moduleVersionOpt = options.get(Option.MODULE_VERSION); > } > - //where > - private static final String XMODULES_PREFIX = "-Xmodule:"; > > int depth = -1; > > My IDE shows that this field is unused and the tests on our CI system agree with it. The field is probably a leftover from "8182162: Remove -XD-Xmodule". > > -Pavel > > From vicente.romero at oracle.com Wed May 27 01:03:05 2020 From: vicente.romero at oracle.com (Vicente Romero) Date: Tue, 26 May 2020 21:03:05 -0400 Subject: RFR: 8241312 missing code coverage for records In-Reply-To: <7E691204-FDBA-4C77-8372-83C87FBCD4C5@oracle.com> References: <3C0F5D0B-C0A1-4B37-BECE-0190790032AE@oracle.com> <25dd0f1f-e50d-beed-c343-e9938c9a89c3@oracle.com> <7E691204-FDBA-4C77-8372-83C87FBCD4C5@oracle.com> Message-ID: <16ede028-d569-c7e7-ff7a-448bca6396fc@oracle.com> sure, Vicente On 5/26/20 12:58 AM, Adam Sotona wrote: > Hi Vicente, > thanks for the review, I've fixed the formatting of ApplicableAnnotationsOnRecords and created changeset version of the webrev here: http://cr.openjdk.java.net/~asotona/8241312/webrev.01/ > > May I ask you for integration of the changeset? > > Thank you, > Adam > >> On 25 May 2020, at 20:39, Vicente Romero wrote: >> >> Hi Adam, >> >> Thanks for fixing this, indentation looks odd at ApplicableAnnotationsOnRecords.java but apart from that it looks good, >> >> Vicente >> >> >> On 5/21/20 9:45 AM, Adam Sotona wrote: >>> Hi, >>> I would like to ask for review of the patch adding new tests to improve test coverage for records. >>> The patch adds: >>> - test for com.sun.tools.sjavac.comp.PubAPIs and com.sun.tools.sjavac.comp.PubapiVisitor >>> - test for com.sun.tools.javac.comp.Check::validateAnnotation, com.sun.tools.javac.code.SymbolMetadata::removeDeclarationMetadata and ::removeFromCompoundList >>> - test for javax.lang.model.util.ElementFilter::recordComponentsIn >>> >>> The patch however does not resolve comment about potentially dead code fragment of Lower::visitRecordDefalso described in JDK-8241312 . I was not able to reach that code by tests, however I'm unable to confirm that it is a dead code. >>> >>> JBS: https://bugs.openjdk.java.net/browse/JDK-8241312 >>> webrev: http://cr.openjdk.java.net/~asotona/8241312/webrev.00/ >>> >>> Mach 5 build with the patch passes all Tier1, Tier2 and Tier3 tests. >>> >>> >>> Thank you, >>> Adam From jan.lahoda at oracle.com Wed May 27 07:55:31 2020 From: jan.lahoda at oracle.com (Jan Lahoda) Date: Wed, 27 May 2020 09:55:31 +0200 Subject: RFR: JDK-8245847 Update Profile.java to not require per-release updates In-Reply-To: References: Message-ID: <692c09b9-1547-1a1c-da1e-8356f91d768f@oracle.com> Looks good to me, Jon. Jan On 26. 05. 20 20:26, Jonathan Gibbons wrote: > Please review a small change to the implementation of Profile.java > so that it does not have to be updated on each release. > > Although Profile.java theoretically permitted the use of profiles for > targets >= 8, they were effectively restricted by additional checks > elsewhere in java, in Arguments.java. > > Long term, the expectation is that support for profiles will be deprecated > (JDK-8245246) and eventually removed (JDK-8245247.) > > -- Jon > > JBS: https://bugs.openjdk.java.net/browse/JDK-8245847 > Webrev: http://cr.openjdk.java.net/~jjg/8245847/webrev.00/index.html > From anna.kozlova at jetbrains.com Wed May 27 11:22:42 2020 From: anna.kozlova at jetbrains.com (Anna Kozlova) Date: Wed, 27 May 2020 13:22:42 +0200 Subject: TYPE_USE annotations on scoping constructs Message-ID: Hi everyone, javac accepts the following code: import java.lang.annotation.ElementType; import java.lang.annotation.Target; @Target(ElementType.TYPE_USE) @interface Ann { } class A {} public class App extends A<@Ann App.Data> {//<-- public static class Data { } public static void main(String[] args) { } } though fails to compile static List<@Ann App.Data> l; Looks like A<@Ann App.Data> should also be a compile error? Thanks, Anna -------------- next part -------------- An HTML attachment was scrubbed... URL: From jan.lahoda at oracle.com Wed May 27 14:40:44 2020 From: jan.lahoda at oracle.com (Jan Lahoda) Date: Wed, 27 May 2020 16:40:44 +0200 Subject: RFR: JDK-8245786: Scope is wrong for ClassTree representing record Message-ID: Hi, Using Trees.getScope of a TreePath that represents a record does not return a Scope for the record. The reason is a missing case in JavacTrees.getAttrContext. The proposed fix is to simply list RECORD among other ClassTree kinds. Webrev: http://cr.openjdk.java.net/~jlahoda/8245786/webrev.00/ JBS: https://bugs.openjdk.java.net/browse/JDK-8245786 How does this look? Thanks, Jan From jonathan.gibbons at oracle.com Wed May 27 15:39:00 2020 From: jonathan.gibbons at oracle.com (Jonathan Gibbons) Date: Wed, 27 May 2020 08:39:00 -0700 Subject: RFR: JDK-8245786: Scope is wrong for ClassTree representing record In-Reply-To: References: Message-ID: <868f33da-c341-c922-c7a6-f9d82c89efa5@oracle.com> Looks good to me. -- Jon On 5/27/20 7:40 AM, Jan Lahoda wrote: > Hi, > > Using Trees.getScope of a TreePath that represents a record does not > return a Scope for the record. The reason is a missing case in > JavacTrees.getAttrContext. The proposed fix is to simply list RECORD > among other ClassTree kinds. > > Webrev: http://cr.openjdk.java.net/~jlahoda/8245786/webrev.00/ > JBS: https://bugs.openjdk.java.net/browse/JDK-8245786 > > How does this look? > > Thanks, > ??? Jan From alex.buckley at oracle.com Wed May 27 16:57:40 2020 From: alex.buckley at oracle.com (Alex Buckley) Date: Wed, 27 May 2020 09:57:40 -0700 Subject: TYPE_USE annotations on scoping constructs In-Reply-To: References: Message-ID: <8ca9c68a-5a5d-334b-37ce-3d1be4056a2f@oracle.com> On 5/27/2020 4:22 AM, Anna Kozlova wrote: > javac accepts the following code: > > import java.lang.annotation.ElementType; > import java.lang.annotation.Target; > @Target(ElementType.TYPE_USE) > @interface Ann { } > class A {} > public class App extends A<@Ann App.Data> {//<-- > public static class Data { } > } > > though fails to compile static List<@Ann App.Data> l; > > Looks like A<@Ann App.Data> should also be a compile error? Yes, because the type name `App` is playing the role of a "scoping construct" for the type `Data`. (In the body of the Data class, the term `App.this` is illegal. Hence, the annotation on `App.Data` is not admissible, per JLS 9.7.4.) Alex From adam.sotona at oracle.com Thu May 28 08:38:16 2020 From: adam.sotona at oracle.com (Adam Sotona) Date: Thu, 28 May 2020 10:38:16 +0200 Subject: RFR: 8245153 Unicode encoded double-quoted empty string does not compile Message-ID: Hi, please help me to review fix of Unicode encoded double-quoted empty string compilation. I found the root cause is in com.sun.tools.javac.parser.JavaTokenizer::scanString(int pos). It is trying to un-read unicode quotes by calling com.sun.tools.javac.parser.UnicodeReader::reset(int pos), however that approach works only luckily when one source character matches to one String character (standard quotes in this case). If the quotes are written in Unicode notation \u0022\u0022 , the reset call moves reader.bp cursor to original pos-1 position and reads one character. As the initial pos parameter points AFTER the last parsed character, so position of the first backslash from \u0022\u0022 is already lost and next character parsed is number 2 instead of unicode quotes. The fix just repositions reader to the right place, no matter if quotes are standard nor unicode encoded. Plus there is a new test added for this case. JBS: https://bugs.openjdk.java.net/browse/JDK-8245153 webrev: http://cr.openjdk.java.net/~asotona/8245153/ All Tier 1, 2 and 3 tests are passing. Thanks for the review, Adam From jan.lahoda at oracle.com Thu May 28 08:45:57 2020 From: jan.lahoda at oracle.com (Jan Lahoda) Date: Thu, 28 May 2020 10:45:57 +0200 Subject: RFR: 8230827 javac gives inappropriate warning about potentially ambiguous methods In-Reply-To: References: Message-ID: <73cb429d-03d3-46b2-a77b-32756d5b7844@oracle.com> Seems reasonable to me. Jan On 26. 05. 20 8:08, Adam Sotona wrote: > Hi, > I would like to ask for review of the patch fixing com.sun.tools.javac.comp.Comp:checkPotentiallyAmbiguousOverloads. The actual implementation is too strict and is warning about ambiguous methods even they differ in following parameters. > Plus I've created a test for ambiguous and non-ambiguous cases. > > JBS: https://bugs.openjdk.java.net/browse/JDK-8230827 > webrev: http://cr.openjdk.java.net/~asotona/8230827/webrev.00/ > > Mach 5 build with the patch passes all Tier 1 and Tier 2 tests. > Several unrelated Tier 3 tests are actually failing. > > > Thanks for the review, > Adam > From adam.sotona at oracle.com Thu May 28 08:58:38 2020 From: adam.sotona at oracle.com (Adam Sotona) Date: Thu, 28 May 2020 10:58:38 +0200 Subject: RFR: 8230827 javac gives inappropriate warning about potentially ambiguous methods In-Reply-To: <73cb429d-03d3-46b2-a77b-32756d5b7844@oracle.com> References: <73cb429d-03d3-46b2-a77b-32756d5b7844@oracle.com> Message-ID: <6600789C-98E5-4586-8387-356DE631B788@oracle.com> Thanks for the review. May I ask you for integration of the patch :) here is changeset version of the webrev: http://cr.openjdk.java.net/~asotona/8230827/webrev.01/ Thanks, Adam > On 28 May 2020, at 10:45, Jan Lahoda wrote: > > Seems reasonable to me. > > Jan > > On 26. 05. 20 8:08, Adam Sotona wrote: >> Hi, >> I would like to ask for review of the patch fixing com.sun.tools.javac.comp.Comp:checkPotentiallyAmbiguousOverloads. The actual implementation is too strict and is warning about ambiguous methods even they differ in following parameters. >> Plus I've created a test for ambiguous and non-ambiguous cases. >> JBS: https://bugs.openjdk.java.net/browse/JDK-8230827 >> webrev: http://cr.openjdk.java.net/~asotona/8230827/webrev.00/ >> Mach 5 build with the patch passes all Tier 1 and Tier 2 tests. >> Several unrelated Tier 3 tests are actually failing. >> Thanks for the review, >> Adam From james.laskey at oracle.com Thu May 28 12:02:06 2020 From: james.laskey at oracle.com (Jim Laskey) Date: Thu, 28 May 2020 09:02:06 -0300 Subject: RFR: 8245153 Unicode encoded double-quoted empty string does not compile In-Reply-To: References: Message-ID: <41E4D118-4C35-4E69-847E-4A21B5685535@oracle.com> I've since rewritten this code (targetting for 16) to not use reset at all for this very reason. Your solution may work but the safer solution is to case 2: // Starting an empty string literal. tk = Tokens.TokenKind.STRINGLITERAL; return; Your test should include: String s1 = \u0022\u0022; String s2 = "\u0022; String s3 = \u0022"; String s4 = \u0022\\u0022\u0022; Cheers, -- Jim > On May 28, 2020, at 5:38 AM, Adam Sotona wrote: > > Hi, > please help me to review fix of Unicode encoded double-quoted empty string compilation. > I found the root cause is in com.sun.tools.javac.parser.JavaTokenizer::scanString(int pos). It is trying to un-read unicode quotes by calling com.sun.tools.javac.parser.UnicodeReader::reset(int pos), however that approach works only luckily when one source character matches to one String character (standard quotes in this case). > If the quotes are written in Unicode notation \u0022\u0022 , the reset call moves reader.bp cursor to original pos-1 position and reads one character. > As the initial pos parameter points AFTER the last parsed character, so position of the first backslash from \u0022\u0022 is already lost and next character parsed is number 2 instead of unicode quotes. > The fix just repositions reader to the right place, no matter if quotes are standard nor unicode encoded. > Plus there is a new test added for this case. > > JBS: https://bugs.openjdk.java.net/browse/JDK-8245153 > webrev: http://cr.openjdk.java.net/~asotona/8245153/ > > All Tier 1, 2 and 3 tests are passing. > > Thanks for the review, > Adam From james.laskey at oracle.com Thu May 28 12:04:33 2020 From: james.laskey at oracle.com (Jim Laskey) Date: Thu, 28 May 2020 09:04:33 -0300 Subject: RFR: 8245153 Unicode encoded double-quoted empty string does not compile In-Reply-To: <41E4D118-4C35-4E69-847E-4A21B5685535@oracle.com> References: <41E4D118-4C35-4E69-847E-4A21B5685535@oracle.com> Message-ID: <28FF9F88-5F60-4D2E-9D56-F6CE111025FE@oracle.com> Test should probably also include String s0 = ""; :-) > On May 28, 2020, at 9:02 AM, Jim Laskey wrote: > > I've since rewritten this code (targetting for 16) to not use reset at all for this very reason. Your solution may work but the safer solution is to > > case 2: // Starting an empty string literal. > tk = Tokens.TokenKind.STRINGLITERAL; > return; > > > Your test should include: > > String s1 = \u0022\u0022; > String s2 = "\u0022; > String s3 = \u0022"; > String s4 = \u0022\\u0022\u0022; > > Cheers, > > -- Jim > > >> On May 28, 2020, at 5:38 AM, Adam Sotona wrote: >> >> Hi, >> please help me to review fix of Unicode encoded double-quoted empty string compilation. >> I found the root cause is in com.sun.tools.javac.parser.JavaTokenizer::scanString(int pos). It is trying to un-read unicode quotes by calling com.sun.tools.javac.parser.UnicodeReader::reset(int pos), however that approach works only luckily when one source character matches to one String character (standard quotes in this case). >> If the quotes are written in Unicode notation \u0022\u0022 , the reset call moves reader.bp cursor to original pos-1 position and reads one character. >> As the initial pos parameter points AFTER the last parsed character, so position of the first backslash from \u0022\u0022 is already lost and next character parsed is number 2 instead of unicode quotes. >> The fix just repositions reader to the right place, no matter if quotes are standard nor unicode encoded. >> Plus there is a new test added for this case. >> >> JBS: https://bugs.openjdk.java.net/browse/JDK-8245153 >> webrev: http://cr.openjdk.java.net/~asotona/8245153/ >> >> All Tier 1, 2 and 3 tests are passing. >> >> Thanks for the review, >> Adam > From adam.sotona at oracle.com Thu May 28 13:22:59 2020 From: adam.sotona at oracle.com (Adam Sotona) Date: Thu, 28 May 2020 15:22:59 +0200 Subject: RFR: 8245153 Unicode encoded double-quoted empty string does not compile In-Reply-To: <28FF9F88-5F60-4D2E-9D56-F6CE111025FE@oracle.com> References: <41E4D118-4C35-4E69-847E-4A21B5685535@oracle.com> <28FF9F88-5F60-4D2E-9D56-F6CE111025FE@oracle.com> Message-ID: <160BF400-3877-42D4-9E34-6966AAF6902F@oracle.com> Right, that is even better :) Here is new webrev with the new patch and extended test: http://cr.openjdk.java.net/~asotona/8245153/webrev.01/ Thanks, Adam > On 28 May 2020, at 14:04, Jim Laskey wrote: > > Test should probably also include > > String s0 = ""; > > :-) > >> On May 28, 2020, at 9:02 AM, Jim Laskey wrote: >> >> I've since rewritten this code (targetting for 16) to not use reset at all for this very reason. Your solution may work but the safer solution is to >> >> case 2: // Starting an empty string literal. >> tk = Tokens.TokenKind.STRINGLITERAL; >> return; >> >> >> Your test should include: >> >> String s1 = \u0022\u0022; >> String s2 = "\u0022; >> String s3 = \u0022"; >> String s4 = \u0022\\u0022\u0022; >> >> Cheers, >> >> -- Jim >> >> >>> On May 28, 2020, at 5:38 AM, Adam Sotona wrote: >>> >>> Hi, >>> please help me to review fix of Unicode encoded double-quoted empty string compilation. >>> I found the root cause is in com.sun.tools.javac.parser.JavaTokenizer::scanString(int pos). It is trying to un-read unicode quotes by calling com.sun.tools.javac.parser.UnicodeReader::reset(int pos), however that approach works only luckily when one source character matches to one String character (standard quotes in this case). >>> If the quotes are written in Unicode notation \u0022\u0022 , the reset call moves reader.bp cursor to original pos-1 position and reads one character. >>> As the initial pos parameter points AFTER the last parsed character, so position of the first backslash from \u0022\u0022 is already lost and next character parsed is number 2 instead of unicode quotes. >>> The fix just repositions reader to the right place, no matter if quotes are standard nor unicode encoded. >>> Plus there is a new test added for this case. >>> >>> JBS: https://bugs.openjdk.java.net/browse/JDK-8245153 >>> webrev: http://cr.openjdk.java.net/~asotona/8245153/ >>> >>> All Tier 1, 2 and 3 tests are passing. >>> >>> Thanks for the review, >>> Adam >> > From james.laskey at oracle.com Thu May 28 13:29:03 2020 From: james.laskey at oracle.com (Jim Laskey) Date: Thu, 28 May 2020 10:29:03 -0300 Subject: RFR: 8245153 Unicode encoded double-quoted empty string does not compile In-Reply-To: <160BF400-3877-42D4-9E34-6966AAF6902F@oracle.com> References: <41E4D118-4C35-4E69-847E-4A21B5685535@oracle.com> <28FF9F88-5F60-4D2E-9D56-F6CE111025FE@oracle.com> <160BF400-3877-42D4-9E34-6966AAF6902F@oracle.com> Message-ID: <03E003E9-3EC6-4B9E-8F54-052D91C24963@oracle.com> +1 > On May 28, 2020, at 10:22 AM, Adam Sotona wrote: > > Right, that is even better :) > Here is new webrev with the new patch and extended test: > http://cr.openjdk.java.net/~asotona/8245153/webrev.01/ > > Thanks, > Adam > > >> On 28 May 2020, at 14:04, Jim Laskey wrote: >> >> Test should probably also include >> >> String s0 = ""; >> >> :-) >> >>> On May 28, 2020, at 9:02 AM, Jim Laskey wrote: >>> >>> I've since rewritten this code (targetting for 16) to not use reset at all for this very reason. Your solution may work but the safer solution is to >>> >>> case 2: // Starting an empty string literal. >>> tk = Tokens.TokenKind.STRINGLITERAL; >>> return; >>> >>> >>> Your test should include: >>> >>> String s1 = \u0022\u0022; >>> String s2 = "\u0022; >>> String s3 = \u0022"; >>> String s4 = \u0022\\u0022\u0022; >>> >>> Cheers, >>> >>> -- Jim >>> >>> >>>> On May 28, 2020, at 5:38 AM, Adam Sotona wrote: >>>> >>>> Hi, >>>> please help me to review fix of Unicode encoded double-quoted empty string compilation. >>>> I found the root cause is in com.sun.tools.javac.parser.JavaTokenizer::scanString(int pos). It is trying to un-read unicode quotes by calling com.sun.tools.javac.parser.UnicodeReader::reset(int pos), however that approach works only luckily when one source character matches to one String character (standard quotes in this case). >>>> If the quotes are written in Unicode notation \u0022\u0022 , the reset call moves reader.bp cursor to original pos-1 position and reads one character. >>>> As the initial pos parameter points AFTER the last parsed character, so position of the first backslash from \u0022\u0022 is already lost and next character parsed is number 2 instead of unicode quotes. >>>> The fix just repositions reader to the right place, no matter if quotes are standard nor unicode encoded. >>>> Plus there is a new test added for this case. >>>> >>>> JBS: https://bugs.openjdk.java.net/browse/JDK-8245153 >>>> webrev: http://cr.openjdk.java.net/~asotona/8245153/ >>>> >>>> All Tier 1, 2 and 3 tests are passing. >>>> >>>> Thanks for the review, >>>> Adam >>> >> > From adam.sotona at oracle.com Thu May 28 14:28:42 2020 From: adam.sotona at oracle.com (Adam Sotona) Date: Thu, 28 May 2020 16:28:42 +0200 Subject: RFR: JDK-8236697 Stack overflow with cyclic hierarchy in class file Message-ID: <3F9B3770-318A-4827-AD7A-F9D30FC0D79C@oracle.com> Hi, I would like to ask for help with decision and review fix of JDK-8236697 Stack overflow with cyclic hierarchy in class file. JBS: https://bugs.openjdk.java.net/browse/JDK-8236697 First important information is that the Stack overflow is caused by artificially corrupted library class file. The reproducible case described in the issue can be significantly simplified and I've transformed it into a test case (a part of the patches below). Now I'm considering three possible options: Option #1 - complete detection and reporting of dependency cycles as a part of c.s.t.j.code.Types::asSuper by call of c.s.t.j.comp.Check::checkNonCyclic method, with positive impact on cycle detection and reporting, with minimal negative impact on performance and with negative impact on EagerInterfaceCompletionTest, which does not expect that by calling asSuper will be updated error status of all ancestors. Here is related patch in webrev: http://cr.openjdk.java.net/~asotona/8236697/webrev.00/ Option #2 - minimal necessary cycle detection just to avoid stack overflow, using LOCKED flag as a part of c.s.t.j.code.Types::asSuper execution, without any error reporting, just to avoid erroneous state, with almost no impact on performance and no detected impact on other parts of javac and tests. webrev: http://cr.openjdk.java.net/~asotona/8236697/webrev.01/ Option #3 - do not fix it, as artificially corrupted cyclic class file is an extreme case, where Stack overflow from javac might be considered as relevant response I've run Tier 1, 2 and 3 tests for options #1 and #2 and also javac compilation benchmarks comparing javac performance against JDK 15 build 25. I propose to use option #2, however please let me know your opinion and/or review. Thanks, Adam From jonathan.gibbons at oracle.com Thu May 28 14:47:13 2020 From: jonathan.gibbons at oracle.com (Jonathan Gibbons) Date: Thu, 28 May 2020 07:47:13 -0700 Subject: JDK-8244763: Update --release 8 symbol information after JSR 337 MR3 In-Reply-To: <87877fd1-5413-7518-a2e6-d6d2132f6356@oracle.com> References: <87877fd1-5413-7518-a2e6-d6d2132f6356@oracle.com> Message-ID: <3f816bd3-bc9d-8f94-db98-94fd0423948d@oracle.com> Looks good to me. -- Jon On 5/18/20 9:36 AM, Jan Lahoda wrote: > I apologize, I used a wrong patch for the "data" webrev. The "class > name java/util/jar/Attributes$Name" entry in java.base-7.sym.txt is > first adding field descriptions, and then removing the old ones: > --- >> class name java/util/jar/Attributes$Name >> field name EXTENSION_INSTALLATION descriptor >> Ljava/util/jar/Attributes$Name; flags 19 >> field name IMPLEMENTATION_VENDOR_ID descriptor >> Ljava/util/jar/Attributes$Name; flags 19 >> field name IMPLEMENTATION_URL descriptor >> Ljava/util/jar/Attributes$Name; flags 19 >> -field name EXTENSION_INSTALLATION descriptor >> Ljava/util/jar/Attributes$Name; >> -field name IMPLEMENTATION_VENDOR_ID descriptor >> Ljava/util/jar/Attributes$Name; >> -field name IMPLEMENTATION_URL descriptor >> Ljava/util/jar/Attributes$Name;--- > > The correct order (and the order generated by the tool in the > webrev.00-create-symbols/ webrev) is to first remove the field > descriptions and then add the new ones: > --- >> class name java/util/jar/Attributes$Name >> -field name EXTENSION_INSTALLATION descriptor >> Ljava/util/jar/Attributes$Name; >> -field name IMPLEMENTATION_VENDOR_ID descriptor >> Ljava/util/jar/Attributes$Name; >> -field name IMPLEMENTATION_URL descriptor >> Ljava/util/jar/Attributes$Name; >> field name EXTENSION_INSTALLATION descriptor >> Ljava/util/jar/Attributes$Name; flags 19 >> field name IMPLEMENTATION_VENDOR_ID descriptor >> Ljava/util/jar/Attributes$Name; flags 19 >> field name IMPLEMENTATION_URL descriptor >> Ljava/util/jar/Attributes$Name; flags 19 > --- > > An updated webrev is the correct data is here: > http://cr.openjdk.java.net/~jlahoda/8244763/webrev.01-data/ > > The only change is the above difference in order of entries in > Attributes$Name. > > Sorry for trouble. > > Jan > > On 18. 05. 20 16:55, Jan Lahoda wrote: >> Hi, >> >> Some new APIs have been introduced in JSR 337 MR3 (JDK 8). We should >> update the historical data for JDK 8 with these new APIs. >> >> As this was the first time we need to update data for a release that >> other release data use as a baseline, it was necessary to improve the >> CreateSymbols tool a little: >> -adding ability to ignore synchronized and native flags for methods >> (as these don't affect the API) >> -when analyzing a new entry (method/field/class), and multiple >> existing entries compatible with the new one exist, the existing >> entry that matches the baseline is chosen (this helps to eliminate >> unnecessary entries, esp. when the synchronized or native flag changes) >> -when replacing/updating a release data, the original approach was to >> remove the data for the release, and read them from classfiles, and >> build the record again from scratch. This does not work well for >> baseline data, so the new approach is: >> --keep all the existing data >> --the new data are load into a new auxiliary slot, called "$" >> --the old data for the given release are deleted >> --the auxiliary release is renamed from "$" to the correct release name >> >> Together these changes allow to minimize the updates to JDK 8 data, >> to mostly only changes in the MR3, with some extra changes like >> new/removed overrides (where the superclass has the method that >> is/was overridden). >> >> The proposed changes to CreateSymbols are: >> http://cr.openjdk.java.net/~jlahoda/8244763/webrev.00-create-symbols/ >> >> The proposed updates to the historical data are: >> http://cr.openjdk.java.net/~jlahoda/8244763/webrev.00-data/ >> >> Note the changes only apply for JDK 8 historical data, so JDK 8 data >> are updated, and JDK 7 and 9 data undo the changes. >> >> JBS: https://bugs.openjdk.java.net/browse/JDK-8244763 >> >> The intent is to backport to JDK 11u. >> >> How does this look? >> >> Thanks! >> >> Jan From roland.illig at gmx.de Thu May 28 14:57:41 2020 From: roland.illig at gmx.de (Roland Illig) Date: Thu, 28 May 2020 16:57:41 +0200 Subject: RFR: 8245153 Unicode encoded double-quoted empty string does not compile In-Reply-To: <41E4D118-4C35-4E69-847E-4A21B5685535@oracle.com> References: <41E4D118-4C35-4E69-847E-4A21B5685535@oracle.com> Message-ID: On 28.05.2020 14:02, Jim Laskey wrote: > Your test should include: > > String s1 = \u0022\u0022; > String s2 = "\u0022; > String s3 = \u0022"; > String s4 = \u0022\\u0022\u0022; s4.length == 6, according to JLS14 ? 3.3, keyword "eligible". I'm not sure whether that was intended or not, therefore I'd add: String s5 = \u0022\u005C\u0022\u0022; From james.laskey at oracle.com Thu May 28 15:02:26 2020 From: james.laskey at oracle.com (Jim Laskey) Date: Thu, 28 May 2020 12:02:26 -0300 Subject: RFR: 8245153 Unicode encoded double-quoted empty string does not compile In-Reply-To: References: <41E4D118-4C35-4E69-847E-4A21B5685535@oracle.com> Message-ID: s4 is about trying to trick up the UnicodeReader on handling the double backslash after repositioning. Interpret it as having the content "\\" + "u0022" . > On May 28, 2020, at 11:57 AM, Roland Illig wrote: > > On 28.05.2020 14:02, Jim Laskey wrote: >> Your test should include: >> >> String s1 = \u0022\u0022; >> String s2 = "\u0022; >> String s3 = \u0022"; >> String s4 = \u0022\\u0022\u0022; > > s4.length == 6, according to JLS14 ? 3.3, keyword "eligible". > > I'm not sure whether that was intended or not, therefore I'd add: > > String s5 = \u0022\u005C\u0022\u0022; From jonathan.gibbons at oracle.com Thu May 28 17:15:58 2020 From: jonathan.gibbons at oracle.com (Jonathan Gibbons) Date: Thu, 28 May 2020 10:15:58 -0700 Subject: RFR: JDK-8241519: javac crashes with wrong module-info.class in module path In-Reply-To: <31803490-d853-b59e-8cfa-d561e469eac0@oracle.com> References: <31803490-d853-b59e-8cfa-d561e469eac0@oracle.com> Message-ID: Looks good to me. -- Jon On 5/15/20 7:53 AM, Jan Lahoda wrote: > Hi, > > When javac loads module-info.class, that is broken, and hence a > CompletionFailure (or BadClassFile) is thrown, the corresponding > ModuleSymbol is not marked as erroneous, and is not fully completed, > which may lead to follow on exceptions. > > The proposal is to mark the ModuleSymbol as erroneous, and do basic > initialization of it, when CompletionFailure is thrown while loading > the module-info.class. > > Proposed webrev: > http://cr.openjdk.java.net/~jlahoda/8241519/webrev.00/ > > JBS: > https://bugs.openjdk.java.net/browse/JDK-8241519 > > How does this look? > > Thanks, > ??? Jan From joe.darcy at oracle.com Thu May 28 21:51:01 2020 From: joe.darcy at oracle.com (Joe Darcy) Date: Thu, 28 May 2020 14:51:01 -0700 Subject: JDK 16 RFR of JDK-8235496 : "Start of release updates for JDK 16" and related work Message-ID: <8f9a018a-0c3a-b06f-a813-a8ca75b49756@oracle.com> Hello, The start of JDK 16 is right around the corner with JDK 15 forking off from jdk/jdk at ramp down 1 [1]. Please review the usual javac-related portions of ??? http://cr.openjdk.java.net/~darcy/8235496.4/ and the associated CSRs: ??? JDK-8245592: Add SourceVersion.RELEASE_16 ??? https://bugs.openjdk.java.net/browse/JDK-8245592 ??? JDK-8245586: Add source 16 and target 16 to javac ??? https://bugs.openjdk.java.net/browse/JDK-8245586 The update mostly follows the now-expected pattern. The webrev above contains a fix for ??? ??? JDK-8245544: com/sun/tools/javac/platform/JDKPlatformProvider.java does not support ct.sym with platform versions 16+ from Jan; this change may be pushed into JDK 15 before the fork. If so, it will be sync'ed out of the start-of-16 changes, etc. Related review threads started on build-dev and hotspot dev. Thanks, -Joe [1] http://openjdk.java.net/projects/jdk/15/ From jonathan.gibbons at oracle.com Thu May 28 23:10:19 2020 From: jonathan.gibbons at oracle.com (Jonathan Gibbons) Date: Thu, 28 May 2020 16:10:19 -0700 Subject: JDK 16 RFR of JDK-8235496 : "Start of release updates for JDK 16" and related work In-Reply-To: <8f9a018a-0c3a-b06f-a813-a8ca75b49756@oracle.com> References: <8f9a018a-0c3a-b06f-a813-a8ca75b49756@oracle.com> Message-ID: <9f8c3b19-c4fa-41ff-260c-fe0ded10361b@oracle.com> Reading the javac parts ... http://cr.openjdk.java.net/~darcy/8235496.4/src/jdk.compiler/share/classes/com/sun/tools/javac/code/Source.java.sdiff.html The tbd in "15, tbd" should be updated sometime. Lines 161-174: why not a switch? http://cr.openjdk.java.net/~darcy/8235496.4/test/langtools/tools/javac/api/T6395981.java.sdiff.html Long line http://cr.openjdk.java.net/~darcy/8235496.4/test/langtools/tools/javac/lib/JavacTestingAbstractProcessor.java.sdiff.html Line 145: why is this line not updated? Line 114, 125: Why the annotations on abstract classes? Do they have any effect? http://cr.openjdk.java.net/~darcy/8235496.4/test/langtools/tools/javac/versions/Versions.java.sdiff.html Line 301: by analogy with preceding methods, should it include New16.java Line 296: Should it have a call of expectedFail or a comment? -- Jon On 5/28/20 2:51 PM, Joe Darcy wrote: > Hello, > > The start of JDK 16 is right around the corner with JDK 15 forking off > from jdk/jdk at ramp down 1 [1]. > > Please review the usual javac-related portions of > > ??? http://cr.openjdk.java.net/~darcy/8235496.4/ > > and the associated CSRs: > > ??? JDK-8245592: Add SourceVersion.RELEASE_16 > ??? https://bugs.openjdk.java.net/browse/JDK-8245592 > > ??? JDK-8245586: Add source 16 and target 16 to javac > ??? https://bugs.openjdk.java.net/browse/JDK-8245586 > > The update mostly follows the now-expected pattern. The webrev above > contains a fix for > > ??? ??? JDK-8245544: > com/sun/tools/javac/platform/JDKPlatformProvider.java does not support > ct.sym with platform versions 16+ > > from Jan; this change may be pushed into JDK 15 before the fork. If > so, it will be sync'ed out of the start-of-16 changes, etc. > > Related review threads started on build-dev and hotspot dev. > > Thanks, > > -Joe > > [1] http://openjdk.java.net/projects/jdk/15/ > From joe.darcy at oracle.com Fri May 29 02:26:28 2020 From: joe.darcy at oracle.com (Joe Darcy) Date: Thu, 28 May 2020 19:26:28 -0700 Subject: JDK 16 RFR of JDK-8235496 : "Start of release updates for JDK 16" and related work In-Reply-To: <9f8c3b19-c4fa-41ff-260c-fe0ded10361b@oracle.com> References: <8f9a018a-0c3a-b06f-a813-a8ca75b49756@oracle.com> <9f8c3b19-c4fa-41ff-260c-fe0ded10361b@oracle.com> Message-ID: Before pushing, I'll also update the copyright year. On 5/28/2020 4:10 PM, Jonathan Gibbons wrote: > Reading the javac parts ... > > > http://cr.openjdk.java.net/~darcy/8235496.4/src/jdk.compiler/share/classes/com/sun/tools/javac/code/Source.java.sdiff.html > > > The tbd in "15, tbd" should be updated sometime. Sure; I'll all a note for "text blocks", as done in SourceVersion. > > Lines 161-174: why not a switch? Hmm. Not sure; the method may date back to the pre-enum days and it wasn't updated to use a switch. I'm convert it over. > > http://cr.openjdk.java.net/~darcy/8235496.4/test/langtools/tools/javac/api/T6395981.java.sdiff.html > > > Long line Is there a way to get line wrap for those jtreg lines? > > http://cr.openjdk.java.net/~darcy/8235496.4/test/langtools/tools/javac/lib/JavacTestingAbstractProcessor.java.sdiff.html > > > Line 145: why is this line not updated? Looks like I missed it from last time and it didn't get picked up with my grep/sed for "RELEASE_15"; good catch. > > Line 114, 125: Why the annotations on abstract classes? Do they have > any effect? The SupportedSourceVersion annotation is not @Inherited so it wouldn't have a direct effect, but IIRC there are cases where subclasses query the parent's annotation to determine that information. Regardless, I think it is easier to maintain the SupportedSourceVersion annotation on all the visitor type even if not strictly necessary on some of them. > > http://cr.openjdk.java.net/~darcy/8235496.4/test/langtools/tools/javac/versions/Versions.java.sdiff.html > > > Line 301: by analogy with preceding methods, should it include New16.java There isn't non-preview new-in-16 code, so no New16.java just yet :-) (In an unrelated edit, I was considering only have a single javac invocation for all the files expected to compile successfully for a given source level, which should cut down on the test run time a bit, but that can be done under a separate bug.) > > Line 296: Should it have a call of expectedFail or a comment? Sure; I'll replicate the comment. Thanks, -Joe From joe.darcy at oracle.com Sat May 30 00:07:58 2020 From: joe.darcy at oracle.com (Joe Darcy) Date: Fri, 29 May 2020 17:07:58 -0700 Subject: JDK 16 RFR of JDK-8235496 : "Start of release updates for JDK 16" and related work In-Reply-To: References: <8f9a018a-0c3a-b06f-a813-a8ca75b49756@oracle.com> <9f8c3b19-c4fa-41ff-260c-fe0ded10361b@oracle.com> Message-ID: <55d760d2-82be-3e00-68aa-26d43032b952@oracle.com> On 5/28/2020 7:26 PM, Joe Darcy wrote: > Before pushing, I'll also update the copyright year. > > On 5/28/2020 4:10 PM, Jonathan Gibbons wrote: >> Reading the javac parts ... >> >> >> http://cr.openjdk.java.net/~darcy/8235496.4/src/jdk.compiler/share/classes/com/sun/tools/javac/code/Source.java.sdiff.html >> >> >> The tbd in "15, tbd" should be updated sometime. > > > Sure; I'll all a note for "text blocks", as done in SourceVersion. > > >> >> Lines 161-174: why not a switch? > > > Hmm. Not sure; the method may date back to the pre-enum days and it > wasn't updated to use a switch. I'm convert it over. > Refactored successfully to use an expression switch: http://cr.openjdk.java.net/~darcy/8235496.5/src/jdk.compiler/share/classes/com/sun/tools/javac/code/Source.java.sdiff.html Other changes made as well, including update reference JDK 15 build to b25: ??? http://cr.openjdk.java.net/~darcy/8235496.5/ Thanks, -Joe From james.laskey at oracle.com Sat May 30 12:25:42 2020 From: james.laskey at oracle.com (Jim Laskey) Date: Sat, 30 May 2020 09:25:42 -0300 Subject: JDK 16 RFR of JDK-8235496 : "Start of release updates for JDK 16" and related work In-Reply-To: <55d760d2-82be-3e00-68aa-26d43032b952@oracle.com> References: <8f9a018a-0c3a-b06f-a813-a8ca75b49756@oracle.com> <9f8c3b19-c4fa-41ff-260c-fe0ded10361b@oracle.com> <55d760d2-82be-3e00-68aa-26d43032b952@oracle.com> Message-ID: <0F2A59F4-ED21-4FC4-9981-86B297988AC8@oracle.com> Would it also make sense for readability and consistency to change toSourceVersion as well? public static SourceVersion toSourceVersion(Source source) { return switch(source) { case JDK1_2 -> RELEASE_2; case JDK1_3 -> RELEASE_3; case JDK1_4 -> RELEASE_4; case JDK5 -> RELEASE_5; case JDK6 -> RELEASE_6; case JDK7 -> RELEASE_7; case JDK8 -> RELEASE_8; case JDK9 -> RELEASE_9; case JDK10 -> RELEASE_10; case JDK11 -> RELEASE_11; case JDK12 -> RELEASE_12; case JDK13 -> RELEASE_13; case JDK14 -> RELEASE_14; case JDK15 -> RELEASE_15; case JDK16 -> RELEASE_16; default -> null; }; } Cheers, -- Jim > On May 29, 2020, at 9:07 PM, Joe Darcy wrote: > > On 5/28/2020 7:26 PM, Joe Darcy wrote: >> Before pushing, I'll also update the copyright year. >> >> On 5/28/2020 4:10 PM, Jonathan Gibbons wrote: >>> Reading the javac parts ... >>> >>> >>> http://cr.openjdk.java.net/~darcy/8235496.4/src/jdk.compiler/share/classes/com/sun/tools/javac/code/Source.java.sdiff.html >>> >>> The tbd in "15, tbd" should be updated sometime. >> >> >> Sure; I'll all a note for "text blocks", as done in SourceVersion. >> >> >>> >>> Lines 161-174: why not a switch? >> >> >> Hmm. Not sure; the method may date back to the pre-enum days and it wasn't updated to use a switch. I'm convert it over. >> > > Refactored successfully to use an expression switch: > > http://cr.openjdk.java.net/~darcy/8235496.5/src/jdk.compiler/share/classes/com/sun/tools/javac/code/Source.java.sdiff.html > > Other changes made as well, including update reference JDK 15 build to b25: > > http://cr.openjdk.java.net/~darcy/8235496.5/ > > Thanks, > > -Joe From forax at univ-mlv.fr Sat May 30 12:44:31 2020 From: forax at univ-mlv.fr (Remi Forax) Date: Sat, 30 May 2020 14:44:31 +0200 (CEST) Subject: JDK 16 RFR of JDK-8235496 : "Start of release updates for JDK 16" and related work In-Reply-To: <0F2A59F4-ED21-4FC4-9981-86B297988AC8@oracle.com> References: <8f9a018a-0c3a-b06f-a813-a8ca75b49756@oracle.com> <9f8c3b19-c4fa-41ff-260c-fe0ded10361b@oracle.com> <55d760d2-82be-3e00-68aa-26d43032b952@oracle.com> <0F2A59F4-ED21-4FC4-9981-86B297988AC8@oracle.com> Message-ID: <303545356.1521100.1590842671465.JavaMail.zimbra@u-pem.fr> Hi Jim, the default -> null is not necessary. R?mi ----- Mail original ----- > De: "Jim Laskey" > ?: "joe darcy" > Cc: "compiler-dev" > Envoy?: Samedi 30 Mai 2020 14:25:42 > Objet: Re: JDK 16 RFR of JDK-8235496 : "Start of release updates for JDK 16" and related work > Would it also make sense for readability and consistency to change > toSourceVersion as well? > > public static SourceVersion toSourceVersion(Source source) { > return switch(source) { > case JDK1_2 -> RELEASE_2; > case JDK1_3 -> RELEASE_3; > case JDK1_4 -> RELEASE_4; > case JDK5 -> RELEASE_5; > case JDK6 -> RELEASE_6; > case JDK7 -> RELEASE_7; > case JDK8 -> RELEASE_8; > case JDK9 -> RELEASE_9; > case JDK10 -> RELEASE_10; > case JDK11 -> RELEASE_11; > case JDK12 -> RELEASE_12; > case JDK13 -> RELEASE_13; > case JDK14 -> RELEASE_14; > case JDK15 -> RELEASE_15; > case JDK16 -> RELEASE_16; > default -> null; > }; > } > > Cheers, > > -- Jim > > > >> On May 29, 2020, at 9:07 PM, Joe Darcy wrote: >> >> On 5/28/2020 7:26 PM, Joe Darcy wrote: >>> Before pushing, I'll also update the copyright year. >>> >>> On 5/28/2020 4:10 PM, Jonathan Gibbons wrote: >>>> Reading the javac parts ... >>>> >>>> >>>> http://cr.openjdk.java.net/~darcy/8235496.4/src/jdk.compiler/share/classes/com/sun/tools/javac/code/Source.java.sdiff.html >>>> >>>> The tbd in "15, tbd" should be updated sometime. >>> >>> >>> Sure; I'll all a note for "text blocks", as done in SourceVersion. >>> >>> >>>> >>>> Lines 161-174: why not a switch? >>> >>> >>> Hmm. Not sure; the method may date back to the pre-enum days and it wasn't >>> updated to use a switch. I'm convert it over. >>> >> >> Refactored successfully to use an expression switch: >> >> http://cr.openjdk.java.net/~darcy/8235496.5/src/jdk.compiler/share/classes/com/sun/tools/javac/code/Source.java.sdiff.html >> >> Other changes made as well, including update reference JDK 15 build to b25: >> >> http://cr.openjdk.java.net/~darcy/8235496.5/ >> >> Thanks, >> > > -Joe From jonathan.gibbons at oracle.com Sat May 30 20:07:57 2020 From: jonathan.gibbons at oracle.com (Jonathan Gibbons) Date: Sat, 30 May 2020 13:07:57 -0700 Subject: JDK 16 RFR of JDK-8235496 : "Start of release updates for JDK 16" and related work In-Reply-To: References: <8f9a018a-0c3a-b06f-a813-a8ca75b49756@oracle.com> <9f8c3b19-c4fa-41ff-260c-fe0ded10361b@oracle.com> Message-ID: <7569e420-b39c-ae85-0e10-7448a5f364a9@oracle.com> On 5/28/20 7:26 PM, Joe Darcy wrote: > > >> >> http://cr.openjdk.java.net/~darcy/8235496.4/test/langtools/tools/javac/api/T6395981.java.sdiff.html >> >> >> Long line > > > Is there a way to get line wrap for those jtreg lines? \n :-) -- Jon -------------- next part -------------- An HTML attachment was scrubbed... URL: From joe.darcy at oracle.com Sat May 30 22:21:18 2020 From: joe.darcy at oracle.com (Joe Darcy) Date: Sat, 30 May 2020 15:21:18 -0700 Subject: JDK 16 RFR of JDK-8235496 : "Start of release updates for JDK 16" and related work In-Reply-To: <303545356.1521100.1590842671465.JavaMail.zimbra@u-pem.fr> References: <8f9a018a-0c3a-b06f-a813-a8ca75b49756@oracle.com> <9f8c3b19-c4fa-41ff-260c-fe0ded10361b@oracle.com> <55d760d2-82be-3e00-68aa-26d43032b952@oracle.com> <0F2A59F4-ED21-4FC4-9981-86B297988AC8@oracle.com> <303545356.1521100.1590842671465.JavaMail.zimbra@u-pem.fr> Message-ID: Hi Jim and R?mi, I updated the webrev in place for the second refactored switch: http://cr.openjdk.java.net/~darcy/8235496.5/src/jdk.compiler/share/classes/com/sun/tools/javac/code/Source.java.sdiff.html While I double-checked that all the enum constants were present, javac gave me a compilation error without the "default -> null" code so I left it in; although I don't think it should be necessary. Thanks, -Joe On 5/30/2020 5:44 AM, Remi Forax wrote: > Hi Jim, > the default -> null is not necessary. > > R?mi > > ----- Mail original ----- >> De: "Jim Laskey" >> ?: "joe darcy" >> Cc: "compiler-dev" >> Envoy?: Samedi 30 Mai 2020 14:25:42 >> Objet: Re: JDK 16 RFR of JDK-8235496 : "Start of release updates for JDK 16" and related work >> Would it also make sense for readability and consistency to change >> toSourceVersion as well? >> >> public static SourceVersion toSourceVersion(Source source) { >> return switch(source) { >> case JDK1_2 -> RELEASE_2; >> case JDK1_3 -> RELEASE_3; >> case JDK1_4 -> RELEASE_4; >> case JDK5 -> RELEASE_5; >> case JDK6 -> RELEASE_6; >> case JDK7 -> RELEASE_7; >> case JDK8 -> RELEASE_8; >> case JDK9 -> RELEASE_9; >> case JDK10 -> RELEASE_10; >> case JDK11 -> RELEASE_11; >> case JDK12 -> RELEASE_12; >> case JDK13 -> RELEASE_13; >> case JDK14 -> RELEASE_14; >> case JDK15 -> RELEASE_15; >> case JDK16 -> RELEASE_16; >> default -> null; >> }; >> } >> >> Cheers, >> >> -- Jim >> >> >> >>> On May 29, 2020, at 9:07 PM, Joe Darcy wrote: >>> >>> On 5/28/2020 7:26 PM, Joe Darcy wrote: >>>> Before pushing, I'll also update the copyright year. >>>> >>>> On 5/28/2020 4:10 PM, Jonathan Gibbons wrote: >>>>> Reading the javac parts ... >>>>> >>>>> >>>>> http://cr.openjdk.java.net/~darcy/8235496.4/src/jdk.compiler/share/classes/com/sun/tools/javac/code/Source.java.sdiff.html >>>>> >>>>> The tbd in "15, tbd" should be updated sometime. >>>> >>>> Sure; I'll all a note for "text blocks", as done in SourceVersion. >>>> >>>> >>>>> Lines 161-174: why not a switch? >>>> >>>> Hmm. Not sure; the method may date back to the pre-enum days and it wasn't >>>> updated to use a switch. I'm convert it over. >>>> >>> Refactored successfully to use an expression switch: >>> >>> http://cr.openjdk.java.net/~darcy/8235496.5/src/jdk.compiler/share/classes/com/sun/tools/javac/code/Source.java.sdiff.html >>> >>> Other changes made as well, including update reference JDK 15 build to b25: >>> >>> http://cr.openjdk.java.net/~darcy/8235496.5/ >>> >>> Thanks, >>> >>> -Joe From james.laskey at oracle.com Sat May 30 22:27:17 2020 From: james.laskey at oracle.com (James Laskey) Date: Sat, 30 May 2020 19:27:17 -0300 Subject: JDK 16 RFR of JDK-8235496 : "Start of release updates for JDK 16" and related work In-Reply-To: References: Message-ID: +1 though R?mi pointed the default with null is unnecessary (all cases covered.) ?? > On May 30, 2020, at 7:21 PM, Joe Darcy wrote: > > ?Hi Jim and R?mi, > > I updated the webrev in place for the second refactored switch: > > http://cr.openjdk.java.net/~darcy/8235496.5/src/jdk.compiler/share/classes/com/sun/tools/javac/code/Source.java.sdiff.html > > While I double-checked that all the enum constants were present, javac gave me a compilation error without the "default -> null" code so I left it in; although I don't think it should be necessary. > > Thanks, > > -Joe > >> On 5/30/2020 5:44 AM, Remi Forax wrote: >> Hi Jim, >> the default -> null is not necessary. >> >> R?mi >> >> ----- Mail original ----- >>> De: "Jim Laskey" >>> ?: "joe darcy" >>> Cc: "compiler-dev" >>> Envoy?: Samedi 30 Mai 2020 14:25:42 >>> Objet: Re: JDK 16 RFR of JDK-8235496 : "Start of release updates for JDK 16" and related work >>> Would it also make sense for readability and consistency to change >>> toSourceVersion as well? >>> >>> public static SourceVersion toSourceVersion(Source source) { >>> return switch(source) { >>> case JDK1_2 -> RELEASE_2; >>> case JDK1_3 -> RELEASE_3; >>> case JDK1_4 -> RELEASE_4; >>> case JDK5 -> RELEASE_5; >>> case JDK6 -> RELEASE_6; >>> case JDK7 -> RELEASE_7; >>> case JDK8 -> RELEASE_8; >>> case JDK9 -> RELEASE_9; >>> case JDK10 -> RELEASE_10; >>> case JDK11 -> RELEASE_11; >>> case JDK12 -> RELEASE_12; >>> case JDK13 -> RELEASE_13; >>> case JDK14 -> RELEASE_14; >>> case JDK15 -> RELEASE_15; >>> case JDK16 -> RELEASE_16; >>> default -> null; >>> }; >>> } >>> >>> Cheers, >>> >>> -- Jim >>> >>> >>> >>>> On May 29, 2020, at 9:07 PM, Joe Darcy wrote: >>>> >>>> On 5/28/2020 7:26 PM, Joe Darcy wrote: >>>>> Before pushing, I'll also update the copyright year. >>>>> >>>>> On 5/28/2020 4:10 PM, Jonathan Gibbons wrote: >>>>>> Reading the javac parts ... >>>>>> >>>>>> >>>>>> http://cr.openjdk.java.net/~darcy/8235496.4/src/jdk.compiler/share/classes/com/sun/tools/javac/code/Source.java.sdiff.html >>>>>> >>>>>> The tbd in "15, tbd" should be updated sometime. >>>>> >>>>> Sure; I'll all a note for "text blocks", as done in SourceVersion. >>>>> >>>>> >>>>>> Lines 161-174: why not a switch? >>>>> >>>>> Hmm. Not sure; the method may date back to the pre-enum days and it wasn't >>>>> updated to use a switch. I'm convert it over. >>>>> >>>> Refactored successfully to use an expression switch: >>>> >>>> http://cr.openjdk.java.net/~darcy/8235496.5/src/jdk.compiler/share/classes/com/sun/tools/javac/code/Source.java.sdiff.html >>>> >>>> Other changes made as well, including update reference JDK 15 build to b25: >>>> >>>> http://cr.openjdk.java.net/~darcy/8235496.5/ >>>> >>>> Thanks, >>>> >>>> -Joe From joe.darcy at oracle.com Sat May 30 22:39:02 2020 From: joe.darcy at oracle.com (Joe Darcy) Date: Sat, 30 May 2020 15:39:02 -0700 Subject: JDK 16 RFR of JDK-8235496 : "Start of release updates for JDK 16" and related work In-Reply-To: <7569e420-b39c-ae85-0e10-7448a5f364a9@oracle.com> References: <8f9a018a-0c3a-b06f-a813-a8ca75b49756@oracle.com> <9f8c3b19-c4fa-41ff-260c-fe0ded10361b@oracle.com> <7569e420-b39c-ae85-0e10-7448a5f364a9@oracle.com> Message-ID: On 5/30/2020 1:07 PM, Jonathan Gibbons wrote: > > > On 5/28/20 7:26 PM, Joe Darcy wrote: >> >> >>> >>> http://cr.openjdk.java.net/~darcy/8235496.4/test/langtools/tools/javac/api/T6395981.java.sdiff.html >>> >>> >>> Long line >> >> >> Is there a way to get line wrap for those jtreg lines? > > \n > > :-) > Ah; I mistakenly though the logical @run lines had to be on a single file of the files; updated in http://cr.openjdk.java.net/~darcy/8235496.5/test/langtools/tools/javac/api/T6395981.java.sdiff.html Thanks, -Joe -------------- next part -------------- An HTML attachment was scrubbed... URL: