You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@netbeans.apache.org by Jesse Glick <ty...@gmail.com> on 2020/10/11 19:18:01 UTC

Re: nb-javac-api-RELEASE120.jar does not exist

On Fri, Jul 10, 2020 at 6:24 AM Eric Barboni <sk...@apache.org> wrote:
> nb-javac-api is no more present due to legal reasons. I don't know how to handle that in an "open" manner.

So as of this writing there is no portable way to build NetBeans
modules with Maven if you use any Java editor features, or am I
missing something?

https://github.com/stapler/netbeans-stapler-plugin/pull/7 is as far as I got.

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@netbeans.apache.org
For additional commands, e-mail: dev-help@netbeans.apache.org

For further information about the NetBeans mailing lists, visit:
https://cwiki.apache.org/confluence/display/NETBEANS/Mailing+lists




Re: nb-javac-api-RELEASE120.jar does not exist

Posted by Jaroslav Tulach <ja...@gmail.com>.
Dne pondělí 19. října 2020 23:21:19 CEST, Jesse Glick napsal(a):
> On Wed, Oct 14, 2020 at 2:38 AM Jaroslav Tulach
> 
> <ja...@gmail.com> wrote:
> > Non-kit module depending on a kit would be an error in such setup.
> 
> I see. If this is a rule, there seem to be a number of violations:
> 
> $ fgrep .kit */*/nbproject/project.xml | fgrep -v kit/ | fgrep -v friend
> apisupport/timers/nbproject/project.xml:
> <code-name-base>org.netbeans.modules.ide.kit</code-name-base>
> enterprise/spring.webmvc/nbproject/project.xml:
> <code-name-base>org.netbeans.modules.web.kit</code-name-base>
> enterprise/web.jsf/nbproject/project.xml:
> <code-name-base>org.netbeans.modules.web.kit</code-name-base>
> enterprise/web.primefaces/nbproject/project.xml:
> <code-name-base>org.netbeans.modules.web.jsf.kit</code-name-base>
> enterprise/web.struts/nbproject/project.xml:
> <code-name-base>org.netbeans.modules.web.kit</code-name-base>
> java/debugger.jpda.jsui/nbproject/project.xml:
> <code-name-base>org.netbeans.modules.java.kit</code-name-base>
> java/debugger.jpda.visual/nbproject/project.xml:
> <code-name-base>org.netbeans.modules.java.kit</code-name-base>
> java/maven.search/nbproject/project.xml:
> <code-name-base>org.netbeans.modules.maven.kit</code-name-base>
> java/performance/nbproject/project.xml:
> <code-name-base>org.netbeans.modules.ide.kit</code-name-base>
> java/spring.beans/nbproject/project.xml:
> <code-name-base>org.netbeans.modules.java.kit</code-name-base>
> php/hudson.php/nbproject/project.xml:
> <code-name-base>org.netbeans.modules.php.kit</code-name-base>
> php/php.apigen/nbproject/project.xml:
> <code-name-base>org.netbeans.modules.php.kit</code-name-base>
> php/php.composer/nbproject/project.xml:
> <code-name-base>org.netbeans.modules.php.kit</code-name-base>
> php/php.doctrine2/nbproject/project.xml:
> <code-name-base>org.netbeans.modules.php.kit</code-name-base>
> php/php.latte/nbproject/project.xml:
> <code-name-base>org.netbeans.modules.php.kit</code-name-base>
> php/php.phpdoc/nbproject/project.xml:
> <code-name-base>org.netbeans.modules.php.kit</code-name-base>
> php/php.smarty/nbproject/project.xml:
> <code-name-base>org.netbeans.modules.php.kit</code-name-base>
> php/php.symfony2/nbproject/project.xml:
> <code-name-base>org.netbeans.modules.php.kit</code-name-base>
> php/php.symfony/nbproject/project.xml:
> <code-name-base>org.netbeans.modules.php.kit</code-name-base>
> php/php.twig/nbproject/project.xml:
> <code-name-base>org.netbeans.modules.php.kit</code-name-base>
> php/php.zend/nbproject/project.xml:
> <code-name-base>org.netbeans.modules.php.kit</code-name-base>
> 
> Anyway, this is getting off topic. The original problem I encountered
> I have found a tolerable solution for.

OK. Just to finish the story.

This kind of dependency usually gets created when a module is distributed 
separately (via AU?) first and then it becomes part of the distribution.

When the module is installed on demand, it is comfortable to request the whole 
functionality - e.g. kit - to be around (true for php frameworks, JS 
extensions to debugger, timers(?), etc.

When the module becomes part of distribution, nobody bothers to revert the 
dependency and make a kit (debugger, php, etc.) depend on that module instead.

-jt




---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@netbeans.apache.org
For additional commands, e-mail: dev-help@netbeans.apache.org

For further information about the NetBeans mailing lists, visit:
https://cwiki.apache.org/confluence/display/NETBEANS/Mailing+lists




Re: nb-javac-api-RELEASE120.jar does not exist

Posted by Jesse Glick <ty...@gmail.com>.
On Wed, Oct 14, 2020 at 2:38 AM Jaroslav Tulach
<ja...@gmail.com> wrote:
> Non-kit module depending on a kit would be an error in such setup.

I see. If this is a rule, there seem to be a number of violations:

$ fgrep .kit */*/nbproject/project.xml | fgrep -v kit/ | fgrep -v friend
apisupport/timers/nbproject/project.xml:
<code-name-base>org.netbeans.modules.ide.kit</code-name-base>
enterprise/spring.webmvc/nbproject/project.xml:
<code-name-base>org.netbeans.modules.web.kit</code-name-base>
enterprise/web.jsf/nbproject/project.xml:
<code-name-base>org.netbeans.modules.web.kit</code-name-base>
enterprise/web.primefaces/nbproject/project.xml:
<code-name-base>org.netbeans.modules.web.jsf.kit</code-name-base>
enterprise/web.struts/nbproject/project.xml:
<code-name-base>org.netbeans.modules.web.kit</code-name-base>
java/debugger.jpda.jsui/nbproject/project.xml:
<code-name-base>org.netbeans.modules.java.kit</code-name-base>
java/debugger.jpda.visual/nbproject/project.xml:
<code-name-base>org.netbeans.modules.java.kit</code-name-base>
java/maven.search/nbproject/project.xml:
<code-name-base>org.netbeans.modules.maven.kit</code-name-base>
java/performance/nbproject/project.xml:
<code-name-base>org.netbeans.modules.ide.kit</code-name-base>
java/spring.beans/nbproject/project.xml:
<code-name-base>org.netbeans.modules.java.kit</code-name-base>
php/hudson.php/nbproject/project.xml:
<code-name-base>org.netbeans.modules.php.kit</code-name-base>
php/php.apigen/nbproject/project.xml:
<code-name-base>org.netbeans.modules.php.kit</code-name-base>
php/php.composer/nbproject/project.xml:
<code-name-base>org.netbeans.modules.php.kit</code-name-base>
php/php.doctrine2/nbproject/project.xml:
<code-name-base>org.netbeans.modules.php.kit</code-name-base>
php/php.latte/nbproject/project.xml:
<code-name-base>org.netbeans.modules.php.kit</code-name-base>
php/php.phpdoc/nbproject/project.xml:
<code-name-base>org.netbeans.modules.php.kit</code-name-base>
php/php.smarty/nbproject/project.xml:
<code-name-base>org.netbeans.modules.php.kit</code-name-base>
php/php.symfony2/nbproject/project.xml:
<code-name-base>org.netbeans.modules.php.kit</code-name-base>
php/php.symfony/nbproject/project.xml:
<code-name-base>org.netbeans.modules.php.kit</code-name-base>
php/php.twig/nbproject/project.xml:
<code-name-base>org.netbeans.modules.php.kit</code-name-base>
php/php.zend/nbproject/project.xml:
<code-name-base>org.netbeans.modules.php.kit</code-name-base>

Anyway, this is getting off topic. The original problem I encountered
I have found a tolerable solution for.

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@netbeans.apache.org
For additional commands, e-mail: dev-help@netbeans.apache.org

For further information about the NetBeans mailing lists, visit:
https://cwiki.apache.org/confluence/display/NETBEANS/Mailing+lists




Re: nb-javac-api-RELEASE120.jar does not exist

Posted by Jaroslav Tulach <ja...@gmail.com>.
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
> 
> <ja...@gmail.com> 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: dev-unsubscribe@netbeans.apache.org
For additional commands, e-mail: dev-help@netbeans.apache.org

For further information about the NetBeans mailing lists, visit:
https://cwiki.apache.org/confluence/display/NETBEANS/Mailing+lists




Re: nb-javac-api-RELEASE120.jar does not exist

Posted by Jesse Glick <ty...@gmail.com>.
On Mon, Oct 12, 2020 at 12:50 PM Jaroslav Tulach
<ja...@gmail.com> 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, especially that some regular modules
depend on kit modules; 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.)

> 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? The generated manifest does
not seem to indicate a minimum Java level.)

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@netbeans.apache.org
For additional commands, e-mail: dev-help@netbeans.apache.org

For further information about the NetBeans mailing lists, visit:
https://cwiki.apache.org/confluence/display/NETBEANS/Mailing+lists




Re: nb-javac-api-RELEASE120.jar does not exist

Posted by Jaroslav Tulach <ja...@gmail.com>.
Dne pondělí 12. října 2020 18:43:03 CEST, Jaroslav Tulach napsal(a):
> Dne neděle 11. října 2020 21:18:01 CEST, Jesse Glick napsal(a):
> > On Fri, Jul 10, 2020 at 6:24 AM Eric Barboni <sk...@apache.org> wrote:
> > > nb-javac-api is no more present due to legal reasons. I don't know how
> > > to
> > > handle that in an "open" manner.
> > 
> > So as of this writing there is no portable way to build NetBeans
> > modules with Maven if you use any Java editor features, or am I
> > missing something?
> > 
> > https://github.com/stapler/netbeans-stapler-plugin/pull/7 is as far as I
> > got.
> 
> Nice. Seems fine if it works.

I guess, it doesn't work yet (but it compiled, that is a progress, isn't it?):

> [2020-10-11T19:08:29.606Z] [INFO] Generating Auto Update information for
> org.openide.modules
> [2020-10-11T19:08:29.606Z] [ERROR] Some included modules/bundles depend on
> these codenamebases but they are not included. The application will fail
> starting up. The missing codenamebases are:
> [2020-10-11T19:08:29.606Z] [ERROR]    org.netbeans.modules.javascript.nodejs
>          ref: [org.netbeans.modules.debugger.jpda.trufflenode]
> [2020-10-11T19:08:29.606Z] [ERROR]    org.netbeans.libs.graaljs         
> ref: [org.netbeans.modules.nashorn.execution]
> [2020-10-11T19:08:29.606Z] [ERROR]    org.netbeans.libs.truffleapi         
> ref: [org.netbeans.modules.nashorn.execution,
> org.netbeans.modules.debugger.jpda.truffle]
> [2020-10-11T19:08:29.606Z] [ERROR] Some tokens required by included modules
> are not provided by included modules. The application will fail starting
> up. The missing tokens are:
> [2020-10-11T19:08:29.606Z] [ERROR]   
> org.netbeans.modules.web.browser.api.PageInspector          ref:
> [org.netbeans.modules.ko4j.debugging]
> [2020-10-11T19:08:29.606Z] [ERROR]    org.netbeans.modules.nbjavac         
> ref: [org.netbeans.modules.java.source.nbjavac]

Why don't you try to disable these modules? The truffle stuff is new and your 
application probably doesn't need it. Excluding 
[org.netbeans.modules.ko4j.debugging is probably also fine, unless you need 
knockout.js code completion. No need to include 
org.netbeans.modules.java.source.nbjavac, when you are not using NbJavac - but 
then your application needs to run on JDK11+...

At least that's what I got at first (well second) glance.
-jt







---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@netbeans.apache.org
For additional commands, e-mail: dev-help@netbeans.apache.org

For further information about the NetBeans mailing lists, visit:
https://cwiki.apache.org/confluence/display/NETBEANS/Mailing+lists




Re: nb-javac-api-RELEASE120.jar does not exist

Posted by Jaroslav Tulach <ja...@gmail.com>.
Dne neděle 11. října 2020 21:18:01 CEST, Jesse Glick napsal(a):
> On Fri, Jul 10, 2020 at 6:24 AM Eric Barboni <sk...@apache.org> wrote:
> > nb-javac-api is no more present due to legal reasons. I don't know how to
> > handle that in an "open" manner.
> So as of this writing there is no portable way to build NetBeans
> modules with Maven if you use any Java editor features, or am I
> missing something?
> 
> https://github.com/stapler/netbeans-stapler-plugin/pull/7 is as far as I
> got.

Nice. Seems fine if it works.
-jt




---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@netbeans.apache.org
For additional commands, e-mail: dev-help@netbeans.apache.org

For further information about the NetBeans mailing lists, visit:
https://cwiki.apache.org/confluence/display/NETBEANS/Mailing+lists




RE: nb-javac-api-RELEASE120.jar does not exist

Posted by Eric Barboni <sk...@apache.org>.
Hi,
For now the nb-javac is not on maven central.
Arvind Aprameya is looking for that as side discussion on this pr [1]. I hope it will be doable it would be awesome

Best Regards
Eric

[1]
https://github.com/apache/netbeans/pull/2408



-----Message d'origine-----
De : Jesse Glick <ty...@gmail.com> 
Envoyé : dimanche 11 octobre 2020 21:18
À : dev@netbeans.apache.org
Objet : Re: nb-javac-api-RELEASE120.jar does not exist

On Fri, Jul 10, 2020 at 6:24 AM Eric Barboni <sk...@apache.org> wrote:
> nb-javac-api is no more present due to legal reasons. I don't know how to handle that in an "open" manner.

So as of this writing there is no portable way to build NetBeans modules with Maven if you use any Java editor features, or am I missing something?

https://github.com/stapler/netbeans-stapler-plugin/pull/7 is as far as I got.

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@netbeans.apache.org
For additional commands, e-mail: dev-help@netbeans.apache.org

For further information about the NetBeans mailing lists, visit:
https://cwiki.apache.org/confluence/display/NETBEANS/Mailing+lists





---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@netbeans.apache.org
For additional commands, e-mail: dev-help@netbeans.apache.org

For further information about the NetBeans mailing lists, visit:
https://cwiki.apache.org/confluence/display/NETBEANS/Mailing+lists




Re: nb-javac-api-RELEASE120.jar does not exist

Posted by Geertjan Wielenga <ge...@apache.org>.
Can you try again?

Gj

On Sun, 11 Oct 2020 at 21:18, Jesse Glick <ty...@gmail.com> wrote:

> On Fri, Jul 10, 2020 at 6:24 AM Eric Barboni <sk...@apache.org> wrote:
> > nb-javac-api is no more present due to legal reasons. I don't know how
> to handle that in an "open" manner.
>
> So as of this writing there is no portable way to build NetBeans
> modules with Maven if you use any Java editor features, or am I
> missing something?
>
> https://github.com/stapler/netbeans-stapler-plugin/pull/7 is as far as I
> got.
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@netbeans.apache.org
> For additional commands, e-mail: dev-help@netbeans.apache.org
>
> For further information about the NetBeans mailing lists, visit:
> https://cwiki.apache.org/confluence/display/NETBEANS/Mailing+lists
>
>
>
>