Hello Jesse. Dne úterý 13. října 2020 23:23:49 CEST, Jesse Glick napsal(a): > On Mon, Oct 12, 2020 at 12:50 PM Jaroslav Tulach > > <[email protected]> wrote: > > Why don't you try to disable these modules? > > Got that to work, though it was painful since some other modules > including `java.kit` gratuitously depended on them. (I regret the > introduction of the “kit” system,
At least you know who to blame ;-) This is a regular conflict between ease of use (out of box user experience) and ease of re-use (building up own app and selecting pieces like lego). > especially that some regular modules > depend on kit modules; Feel free to fix that. The "kit" system was always meant as another layer on top of actual modules, right? Non-kit module depending on a kit would be an error in such setup. > as well as the older autoload/eager system. The > GUI to enable/disable features at a larger granularity than module > should have used some higher-level classification system, leaving > module-to-module dependencies to express hard code requirements.) ergonomics/ide.ergonomics module provides `FoDUpdateUnitProvider` which does something like that: present a higher level content for Tools/Plugins not based on modules. However that was created later - you and Trung being already long time gone. > > then your application needs to run on JDK11+... > > In fact switching the whole build to JDK 11 simplified things > considerably. Since there is no particular reason to run NetBeans > itself on Java 8 I may as well publish modules requiring 11. (But how > do I indicate that dependency at runtime? Setting the `javac.target=11` is enough for Ant based system. I hope Maven behaves the same. Anyway let me point you to (your) documentation: https://bits.netbeans.org/12.0/javadoc/org-openide-modules/org/openide/ modules/doc-files/api.html search for "OpenIDE-Module-Java-Dependencies". > The generated manifest does > not seem to indicate a minimum Java level.) Ideally following things shall happen when one specifies javac.target=11,12,13: * right compiler is selected that can handle such compilation * right Java API (using `-release` ) is selected; so one compiles only against available methods * module manifest is enhanced with `OpenIDE-Module-Java-Dependencies > 11` to tell the runtime to disable the module when running on older JDKs The more automatic this can become, the better. -jt --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected] For further information about the NetBeans mailing lists, visit: https://cwiki.apache.org/confluence/display/NETBEANS/Mailing+lists
