Hi Jay, > In TrackMate v 2.5 pom there is... > > <parent> > <groupId>sc.fiji</groupId> > <artifactId>pom-fiji</artifactId> > <version>2.0.0-beta-1-SNAPSHOT</version> > <relativePath/> > </parent> > <artifactId>TrackMate_</artifactId> > <version>2.5.0</version> > <name>plugins/TrackMate_.jar</name>
OK, I finally made a little time to look at this. Yes, this is a major problem with TrackMate's releases. Version 2.5.0 inherits from sc.fiji:pom-fiji:2.0.0-beta-1-SNAPSHOT. This is forbidden in Maven terms -- a release must depend only on other releases. This is a consequence of the fact that Fiji artifacts do not use the maven-release-plugin for releases, and hence nothing ever actually enforces that stipulation. The solution will be for all Fiji plugins to extend a _release_ version of the pom-fiji parent, not a SNAPSHOT version. We are moving in that direction... but until we complete that migration, downstream artifacts such as JEX will _not_ be stable when they depend on a Fiji project such as TrackMate, _even if_ the dependency purports to be a "release" version! Caveat emptor. Regards, Curtis On Sun, Sep 14, 2014 at 7:40 AM, Jay Warrick <jay.w.warr...@gmail.com> wrote: > I changed the subject line from Re: [ImageJ-devel] Maven TrackMate > Dependency Question because of the following... > > Oh boy, really at the extent of my knowledge... but I think I may have it, > is this what is happening??? Is maven pulling TrackMate v 2.3 via TrackMate > v2.5 and fiji? > > In TrackMate v 2.5 pom there is... > > <parent> > <groupId>sc.fiji</groupId> > <artifactId>pom-fiji</artifactId> > <version>2.0.0-beta-1-SNAPSHOT</version> > <relativePath/> > </parent> > <artifactId>TrackMate_</artifactId> > <version>2.5.0</version> > <name>plugins/TrackMate_.jar</name> > > which thus pulls in pom-fiji 2.0.0-beta-1-SNAPSHOT where there is the > following... > > <fiji-compat.version>2.0.0-SNAPSHOT</fiji-compat.version> > > and > > <dependency> > <groupId>sc.fiji</groupId> > <artifactId>fiji-compat</artifactId> > </dependency> > > The pom for fiji-compat uses pom-fiji 2.0.0-SNAPSHOT as parent > > <parent> > <groupId>sc.fiji</groupId> > <artifactId>pom-fiji</artifactId> > <version>2.0.0-SNAPSHOT</version> > <relativePath/> > </parent>< > artifactId>fiji-compat</artifactId> > <name>jars/fiji-compat.jar</name> > > The pom-fiji 2.0.0-SNAPSHOT has the following > > <TrackMate.version>2.3.0-SNAPSHOT</TrackMate.version> > > and > > <dependency> > <groupId>sc.fiji</groupId> > <artifactId>TrackMate_</artifactId> > <version>${TrackMate.version}</version> > </dependency> > > Thus, ?maybe? with TrackMate v 2.5's pom parent being pom-fiji > 2.0.0-beta-1-SNAPSHOT, fiji-compate 2.0.0-SNAPSHOT gets pulled in which > pulls pom-fiji 2.0.0-SNAPSHOT which tries to pulls in TrackMate v 2.3 which > then tries to use <groupId>${jama.groupId}</groupId> instead of > <groupId>gov.nist.math</groupId> for jama. > > Is this counter to what is intended or is there some maven magic which > should right this "wrong"? If it is not intended and could be affecting > things, what might be the fix? > > Thanks all, > > Jay > > > On Sep 14, 2014, at 6:51 AM, Jay Warrick <jay.w.warr...@gmail.com> wrote: > > Ok. So this makes more sense... TrackMate v 2.3 uses > the <groupId>${jama.groupId}</groupId> which causes the error, which was > fixed by TrackMate v2.5 which uses <groupId>gov.nist.math</groupId>. > > So the whole issue boils down to, "Why is maven trying to do ANYTHING with > v 2.3 when I can't find a single dependency on this version? If I can get > Maven to stop looking for v 2.3 my issue will be solved. > > Thoughts on where to search for hidden/residual links to v 2.3 given what > I've checked already? > > Thanks, > > Jay > > On Sep 14, 2014, at 6:45 AM, Jay Warrick <jay.w.warr...@gmail.com> wrote: > > I think never mind. Still learning about Maven, but it looks like the > groupID is assumed the same as the parent so you TrackMate doesn't need to > define it. Should have guessed this based on how everything else seems to > work in Maven. > > On Sep 14, 2014, at 6:15 AM, Jay Warrick <jay.w.warr...@gmail.com> wrote: > > If this might be on the right track, is there any way to test this on my > end? Use offline mode and go into my .m2 repository and muck with poms or > something? > On Sep 14, 2014, at 6:11 AM, Jay Warrick <jay.w.warr...@gmail.com> wrote: > > Hi JY, > > Could it be a problem with the TrackMate groupId? Searching the internet > with the error string brought up this past issue with jama and SPIM... > > https://groups.google.com/forum/#!topic/fiji-devel/zEhBIf1bZEA > > When I look at the TrackMate pom, I don't think I see a "groupId" defined > for the TrackMate plugin. Hard for me to completely decipher in the issue > discussion if this would cause the problem I'm seeing or if it would merely > prevent the imageJ/Fiji folks from "seeing" that such a problem exists. > > Stephan Preibisch, Curtis, and Dscho - Does that sound like the right > track? Thoughts? > > Thanks, > > Jay > > On Sep 13, 2014, at 9:20 AM, Jean-Yves Tinevez <tine...@pasteur.fr> wrote: > > On 13-Sep-14 16:01, Jay Warrick wrote: > > Hi Jean-Yves, > > Thanks for the quick reply! Here are the poms for my multi module > project. I added to the default "pom.xml" names to make things easier to > follow. The Master pom is the parent pom for each of my project modules. > The parent of Master is scijava. The JEX module has essentially one class, > Main which calls the main class in Core. Core contains essentially the > whole program including the dependency on TrackMate. Broken contains broken > code for one reason or another but doesn't really come into play as the > Broken module is not part of the build process. It is "disabled" using a > profile within the JEX module. Despite this, I still confirmed it didn't > depend on TrackMate 2.3 using the Eclipse dependency hierarchy viewer, just > in case. > > > Ok thank you for the crystal clear report. > We are on the verge of what I know of maven. However I remember having a > similar issue that was fixed by making the parent of the master pom the > fiji plugin pom, like for TrackMate pom. > > Any chance you could just try that first? > jy > > > ------------------------------ > <http://www.avast.com/> > > This email is free from viruses and malware because avast! Antivirus > <http://www.avast.com/> protection is active. > > _______________________________________________ > ImageJ-devel mailing list > ImageJ-devel@imagej.net > http://imagej.net/mailman/listinfo/imagej-devel > > > _______________________________________________ > ImageJ-devel mailing list > ImageJ-devel@imagej.net > http://imagej.net/mailman/listinfo/imagej-devel > > > _______________________________________________ > ImageJ-devel mailing list > ImageJ-devel@imagej.net > http://imagej.net/mailman/listinfo/imagej-devel > > > _______________________________________________ > ImageJ-devel mailing list > ImageJ-devel@imagej.net > http://imagej.net/mailman/listinfo/imagej-devel > > > > > _______________________________________________ > ImageJ-devel mailing list > ImageJ-devel@imagej.net > http://imagej.net/mailman/listinfo/imagej-devel > >
_______________________________________________ ImageJ-devel mailing list ImageJ-devel@imagej.net http://imagej.net/mailman/listinfo/imagej-devel