Hi, Not sure to fully understand the topic, but if Jaroslav suggests to add a target to compile and then deploy all NB modules in a local or remote Maven repository, I am 200% in favor for that. Especially for the DEV version
On Wed, Sep 4, 2019 at 10:00 AM Eric Barboni <sk...@apache.org> wrote: > Hi > > > > Not sure to have the full scope. > > > > there is an outdated target “patch-for-maven” at the bottom of > nbbuild/templates/projectized we can maybe take inspiration > > nb-repository is the plugin used for doing that work. > > > > In the current maven population for repository I have to use the download > index feature to permit to use the “true” maven dependencies. > > Naïve interpretation: Otherwise it populate org.netbeans.external with > clone of existing dependencies on central. Maybe incomplete. > > > > I guess this use is only because nb-plugin use finished artefact and is > not knowing the build > > > > If we show from outside: > > We should cache a index of maven central (it takes time to get it 12min > on apache build). > > If we are knowing the build > > We may use central coordinate from externals. > > > > Regards > > Eric > > > > De : Jaroslav Tulach <jaroslav.tul...@gmail.com> > Envoyé : mercredi 4 septembre 2019 09:26 > À : dev <dev@netbeans.apache.org>; Jan Lahoda <lah...@gmail.com>; Eric > Barboni <sk...@apache.org> > Objet : Allowing top down approach was: Maven experiment > > > > Hi. > > Jan just explained me what is going on and contrary to his suggestion in > the quoted email we ended up with an idea to start converting the top-most > clusters first. Maybe `enterprise`, etc. To make that possible I suggest > small improvement to `nbbuild/templates/common.xml`: Let's add there a > target `maven-install` - with it one could switch into any existing > NetBeans project directory and just invoke: > > ``` > > $ cd platform/openide.util.lookup > > platform/openide.util.lookup$ ant maven-install > > ``` > > The module would build normally. However, in addition to that, Eric's NBM > Maven plugin would be used to install the necessary artifacts into the > local Maven repository `.m2/repository`. Of course, there would also be a > way to build and install whole NetBeans: > > ``` > > nbbuild$ ant maven-install > > ``` > > > > Once we have it, anyone can start experimenting with changing build of for > example `enterprise` cluster to Maven - as all the necessary artifacts > would already be installed in the local Maven repository. > > > > Eric, do you think having `ant maven-install` is possible? I believe it > would be a great enabler of the other steps. > > -jt > > > > út 3. 9. 2019 v 8:10 odesílatel Jan Lahoda <lah...@gmail.com <mailto: > lah...@gmail.com> > napsal: > > Hi Robert, > > I'd recommend to start with platform/openide.util.lookup - the code for it > does not have any dependencies, the group of its test dependencies is > fairly small and self-contained, and the resulting jar is useful by itself. > It also shows what Lazslo mentioned - a semi-circular dependency in test > dependencies. The test dependencies for openide.util.lookup are: > platform/libs.junit4 and harness/nbjunit. platform/libs.junit4 is a plain > wrapped for junit4, that shouldn't be a problem. harness/nbjunit has module > dependencies: harness/o.n.insane, platform/junit4 and > platform/openide.util.lookup and test dependencies: platform/libs.junit4 > (which is unnecessary to mention), platform/openide.util.ui, > platform/openide.util and platform/openide.util.lookup. And I believe all > these modules only have dependencies from this list, so this should be > self-contained. > > Not sure what would be the next step once the openide.util.lookup would > work - possibly have a working platform (i.e. everything under the platform > directory, so that it would actually start), but the issue there is that > the NetBeans modulesystem needs a specific filesystem structure to start. > Here: > https://github.com/apache/netbeans-mavenutils-nbm-maven-plugin > > are tasks like: > > https://github.com/apache/netbeans-mavenutils-nbm-maven-plugin/blob/master/src/main/java/org/apache/netbeans/nbm/CreateClusterAppMojo.java > > https://github.com/apache/netbeans-mavenutils-nbm-maven-plugin/blob/master/src/main/java/org/apache/netbeans/nbm/CreateClusterMojo.java > > may be interesting there, although those are not meant to work on the base > platform cluster, I believe, so I'd expect some tweaking there. > > > A completely different approach might be to try to peel off some "leaf" > clusters of modules (those that noone else is depending on them) using the > existing tools above (i.e. depending on existing modules built by Ant, and > "exported" to Maven - there are tools for that already). This might mean > e.g. the apisupport of javafx clusters (directories in the repository). The > main complication there might be that in the main NetBeans code base, tests > directories may have dependencies on other test directories. So, e.g., > tests of apisupport/apisupport.project.ant depend on tests of > platform/openide.util.lookup (and other). So solving this might be tricky, > esp. if openide.util.lookup would not be converted to Maven yet. > > > I am eager to hear what you think/what are your experiences! > > Thanks, > Jan > > > On Mon, Sep 2, 2019 at 11:24 PM Robert Scholte <rfscho...@apache.org > <mailto:rfscho...@apache.org> > wrote: > > > Hi, > > > > this month I'll be giving a training about Maven. The last part of the > > session I want to use to transform existing projects to Maven. > > Since Netbeans is still using Ant, it might be an interesting experiment > > to see if this project can ALSO be built with Maven. > > To increase the chance of success, I'd like to have an ordered list of > > the > > Netbeans "deliverables", starting with the least amount of internal > > dependencies. > > Can anybody provide me such a starting list? > > > > regards, > > Robert Scholte > > > > --------------------------------------------------------------------- > > To unsubscribe, e-mail: dev-unsubscr...@netbeans.apache.org <mailto: > dev-unsubscr...@netbeans.apache.org> > > For additional commands, e-mail: dev-h...@netbeans.apache.org <mailto: > dev-h...@netbeans.apache.org> > > > > For further information about the NetBeans mailing lists, visit: > > https://cwiki.apache.org/confluence/display/NETBEANS/Mailing+lists > > > > > > > > > >