<div dir="ltr">Hi Jay,<div><br></div><div><div>> In TrackMate v 2.5 pom there is...</div><div>> </div><div>> <parent></div><div>> <span class="" style="white-space:pre">        </span><groupId>sc.fiji</groupId></div><div>> <span class="" style="white-space:pre">        </span><artifactId>pom-fiji</artifactId></div><div>> <span class="" style="white-space:pre"> </span><version>2.0.0-beta-1-SNAPSHOT</version></div><div>> <span class="" style="white-space:pre">  </span><relativePath/></div><div>> </parent></div><div>> <artifactId>TrackMate_</artifactId></div><div>> <version>2.5.0</version></div><div>> <name>plugins/TrackMate_.jar</name></div></div><div><br></div><div>OK, I finally made a little time to look at this.</div><div><br>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.</div><div><br></div><div>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.</div><div><br></div><div>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.</div><div><br></div><div>Regards,</div><div>Curtis</div><div class="gmail_extra"><br><div class="gmail_quote">On Sun, Sep 14, 2014 at 7:40 AM, Jay Warrick <span dir="ltr"><<a href="mailto:jay.w.warrick@gmail.com" target="_blank">jay.w.warrick@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div style="word-wrap:break-word"><div>I changed the subject line from Re: [ImageJ-devel] Maven TrackMate Dependency Question because of the following...</div><div><br></div>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?<div><br></div><div><div>In TrackMate v 2.5 pom there is...</div><div><br></div><div><parent></div><div><span style="white-space:pre-wrap">       </span><groupId>sc.fiji</groupId></div><div><span style="white-space:pre-wrap">   </span><artifactId>pom-fiji</artifactId></div><div><span style="white-space:pre-wrap">    </span><version>2.0.0-beta-1-SNAPSHOT</version></div><div><span style="white-space:pre-wrap">     </span><relativePath/></div><div></parent></div><div><artifactId>TrackMate_</artifactId></div><div><version>2.5.0</version></div><div><name>plugins/TrackMate_.jar</name></div></div><div><br></div><div>which thus pulls in pom-fiji 2.0.0-beta-1-SNAPSHOT where there is the following...</div><div><br></div><div><fiji-compat.version>2.0.0-SNAPSHOT</fiji-compat.version></div><div><br></div><div>and </div><div><br></div><div><dependency></div><div><span style="white-space:pre-wrap">     </span><groupId>sc.fiji</groupId></div><div><span style="white-space:pre-wrap">   </span><artifactId>fiji-compat</artifactId></div><div></dependency></div><div><br></div><div>The pom for fiji-compat uses pom-fiji 2.0.0-SNAPSHOT as parent</div><div><br></div><div><parent></div><div><span style="white-space:pre-wrap">   </span><groupId>sc.fiji</groupId></div><div><span style="white-space:pre-wrap">   </span><artifactId>pom-fiji</artifactId></div><div><span style="white-space:pre-wrap">    </span><version>2.0.0-SNAPSHOT</version></div><div><span style="white-space:pre-wrap">    </span><relativePath/></div><div></parent><</div><div>artifactId>fiji-compat</artifactId></div><div><name>jars/fiji-compat.jar</name></div><div><br></div><div>The pom-fiji 2.0.0-SNAPSHOT has the following</div><div><br></div><div><TrackMate.version>2.3.0-SNAPSHOT</TrackMate.version></div><div><br></div><div>and </div><div><br></div><div><dependency></div><div><span style="white-space:pre-wrap">      </span><groupId>sc.fiji</groupId></div><div><span style="white-space:pre-wrap">   </span><artifactId>TrackMate_</artifactId></div><div><span style="white-space:pre-wrap">  </span><version>${TrackMate.version}</version></div><div></dependency></div><div><br></div><div>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. </div><div><br></div><div>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? </div><div><br></div><div>Thanks all,</div><div><br></div><div>Jay</div><div><br></div><div><br><div><div>On Sep 14, 2014, at 6:51 AM, Jay Warrick <<a href="mailto:jay.w.warrick@gmail.com" target="_blank">jay.w.warrick@gmail.com</a>> wrote:</div><br><blockquote type="cite"><div style="word-wrap:break-word">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>.<div><br></div><div>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.</div><div><br></div><div>Thoughts on where to search for hidden/residual links to v 2.3 given what I've checked already?</div><div><br></div><div>Thanks,</div><div><br></div><div>Jay</div><div><br></div><div><div><div>On Sep 14, 2014, at 6:45 AM, Jay Warrick <<a href="mailto:jay.w.warrick@gmail.com" target="_blank">jay.w.warrick@gmail.com</a>> wrote:</div><br><blockquote type="cite"><div style="word-wrap:break-word">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.<div><br></div><div><div><div>On Sep 14, 2014, at 6:15 AM, Jay Warrick <<a href="mailto:jay.w.warrick@gmail.com" target="_blank">jay.w.warrick@gmail.com</a>> wrote:</div><br><blockquote type="cite"><div style="word-wrap:break-word">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?<br><div><div>On Sep 14, 2014, at 6:11 AM, Jay Warrick <<a href="mailto:jay.w.warrick@gmail.com" target="_blank">jay.w.warrick@gmail.com</a>> wrote:</div><br><blockquote type="cite"><div style="word-wrap:break-word">Hi JY,<div><br></div><div>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...</div><div><br></div><div><a href="https://groups.google.com/forum/#!topic/fiji-devel/zEhBIf1bZEA" target="_blank">https://groups.google.com/forum/#!topic/fiji-devel/zEhBIf1bZEA</a></div><div><br></div><div>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.</div><div><br></div><div>Stephan Preibisch, Curtis, and Dscho - Does that sound like the right track? Thoughts?</div><div><br></div><div>Thanks,</div><div><br></div><div>Jay</div><div><br><div><div>On Sep 13, 2014, at 9:20 AM, Jean-Yves Tinevez <<a href="mailto:tinevez@pasteur.fr" target="_blank">tinevez@pasteur.fr</a>> wrote:</div><br><blockquote type="cite">
  
    
  
  <div bgcolor="#FFFFFF" text="#000000">
    <div>On 13-Sep-14 16:01, Jay Warrick wrote:<br>
    </div>
    <blockquote type="cite">
      
      Hi Jean-Yves,
      <div><br>
      </div>
      <div>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.</div>
    </blockquote>
    <br>
    Ok thank you for the crystal clear report. <br>
    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.<br>
    <br>
    Any chance you could just try that first?<br>
    jy<br>
  
<br><br>
<hr style="border:none;color:rgb(144,144,144);min-height:1px;width:99%;background-color:rgb(176,176,176)">
<table style="border-collapse:collapse;border:none">
        <tbody><tr>
                <td style="border:none;padding:0px 15px 0px 8px">
                        <a href="http://www.avast.com/" target="_blank">
                                <img border="0" src="http://static.avast.com/emails/avast-mail-stamp.png">
                        </a>
                </td>
                <td><p style="color:rgb(61,77,90);font-family:Calibri,Verdana,Arial,Helvetica;font-size:12pt">
                                This email is free from viruses and malware because <a href="http://www.avast.com/" target="_blank">avast! Antivirus</a> protection is active.
                        </p>
                </td>
        </tr>
</tbody></table>
<br>
</div>

_______________________________________________<br>ImageJ-devel mailing list<br><a href="mailto:ImageJ-devel@imagej.net" target="_blank">ImageJ-devel@imagej.net</a><br><a href="http://imagej.net/mailman/listinfo/imagej-devel" target="_blank">http://imagej.net/mailman/listinfo/imagej-devel</a><br></blockquote></div><br></div></div>_______________________________________________<br>ImageJ-devel mailing list<br><a href="mailto:ImageJ-devel@imagej.net" target="_blank">ImageJ-devel@imagej.net</a><br><a href="http://imagej.net/mailman/listinfo/imagej-devel" target="_blank">http://imagej.net/mailman/listinfo/imagej-devel</a><br></blockquote></div><br></div>_______________________________________________<br>ImageJ-devel mailing list<br><a href="mailto:ImageJ-devel@imagej.net" target="_blank">ImageJ-devel@imagej.net</a><br><a href="http://imagej.net/mailman/listinfo/imagej-devel" target="_blank">http://imagej.net/mailman/listinfo/imagej-devel</a><br></blockquote></div><br></div></div>_______________________________________________<br>ImageJ-devel mailing list<br><a href="mailto:ImageJ-devel@imagej.net" target="_blank">ImageJ-devel@imagej.net</a><br><a href="http://imagej.net/mailman/listinfo/imagej-devel" target="_blank">http://imagej.net/mailman/listinfo/imagej-devel</a><br></blockquote></div><br></div></div></blockquote></div><br></div></div><br>_______________________________________________<br>
ImageJ-devel mailing list<br>
<a href="mailto:ImageJ-devel@imagej.net" target="_blank">ImageJ-devel@imagej.net</a><br>
<a href="http://imagej.net/mailman/listinfo/imagej-devel" target="_blank">http://imagej.net/mailman/listinfo/imagej-devel</a><br>
<br></blockquote></div><br></div></div>