Hi Stevo,

Thanks for reviewing the Maven POMs in LUCENE-2657 - I appreciate it.

> In those poms, not all modules have explicit version and groupId which
> is a bad practice.

Really?  According to the "POM best practices" section in Sonatype's Maven book 
<http://www.sonatype.com/books/mvnref-book/reference/pom-relationships-sect-pom-best-practice.html>,
 inheriting version and groupId is standard and acceptable.

However, since the Lucene/Solr source tree contains two groupIds 
(org.apache.lucene and org.apache.solr), I agree that all modules should have 
an explicit groupId, and you're right: several of the aggregator POMs don't 
have explicit groupId.  I'll fix this.

But I don't think it's a bad practice to inherit the version from the parent 
POM.  All Lucene and Solr modules have synchronized versions - it doesn't make 
sense for them to be specified independent of the whole project.

> Also some parent references contain invalid default
> (../pom.xml) relativePath - path to their parent pom.xml.

AFAICT, the default relativePath concept no longer exists (as of Maven 2.2+).  
That is, the parent POM resolution method uses the explicit relativePath if 
specified, then the local repository -- ../pom.xml is never used unless 
explicitly specified.  (I don't know this for a fact, I just found that I had 
to "mvn install" before parent POM changes because visible to child POMs, even 
when the parent POM location was in the parent directory.)

That said, I agree it would be useful to have explicit relativePaths - I'll add 
them.

> Paths to build directories look suspicious to me. lucene-bdb module references
> missing library com.sleepycat:berkeleydb:jar:4.7.25 - I see lib/db-4.7.25.jar,
> if it's supposed to be installed in local repository then pom would be handy.

Run "mvn -N -P bootstrap install" from the top level to install non-mavenized 
dependencies into your local repository.

> Wiki page http://wiki.apache.org/solr/HowToContribute references this
> http://markmail.org/message/yb5qgeamosvdscao mail but files
> (.classpath) in archives attached to that email are very outdated.
> eclipse target in base ant build script generates .classpath and
> .settings so it seems mentioned wiki page is outdated too.

I agree, this should be changed.  Go for it!

Steve

Reply via email to