directory-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Brett Porter <brett.por...@gmail.com>
Subject Re: [mina] Using Ant + Forrest like Tapestry team does.
Date Tue, 15 Nov 2005 14:13:11 GMT
On 11/16/05, Trustin Lee <trustin@gmail.com> wrote:
> I'd like to split MINA into multiple Maven subprojects:
>
> * mina-core
> * mina-extension-ssl
> * mina-integration-spring
> * mina-integration-netty

sounds like a good plan.

>
> I'd like to generate the five JARs when I run 'mvn package':
>
> * mina-all-<version>.jar, which contains classes from all subprojects
> * mina-core-<version>.jar
> * mina-extension-ssl-<version>.jar
>  * mina-integration-spring-<version>.jar
> * mina-integration-netty-<version>.jar

all can be done with the assembly plugin (descriptorId
jar-with-dependencies) - an example is maven-artifact-ant in the maven
repository.

>
> Plus 'mvn dist' will have to generate two tarballs:
>
> * mina-<version>.tar.gz
> * mina-src-<version>.tar.gz

Also the assembly plugin -the default should suite (descriptorId of
bin and src respectively).

> For documentation, running 'mvn site' will have to generate one site
> documentation that provides:
>
> * A single site like we ran 'mvn' site for one project; one JavaDoc, one
> coverage report, ...

Aggregation in the site is where we need to improve support (though m1
didn't do it either). Custom solution or working with us on it will be
required here. Each plugin needs some extra support to do this I think
- eg clover needs to merge databases, javadoc needs to pull in
multiple source directories.

>
> I think the site should be splitted to a separate project because we have
> two stream and have to provide documentation for both at one site.

I'm not sure what you mean here about two streams (dev and release?).
If its what I'm tinhking, I agree. Release included/specific docs in
the project, static site that is independant (faq, news, etc) is a
separate project. reports are on the project, and only on the dev
version.

> And I think there's some dependency issue for M2, too.  It is because we're
> using SLF4J and Spring framework at the same time and M2 provides an
> indirect dependency resolver.  SLF4J provides a jar which eases migration
> from commons-logging.  It has the exact API with what commons-logging has,
> but it simply forwards all calls to SLF4J actually.  But the POM of Spring
> framework is saying it depends on commons-logging.  M2 will retrieve
> commons-logging, but it shouldn't for MINA.  There should be some way to
> specify
> http://www.ibiblio.org/maven/org.slf4j/jars/jcl104-over-slf4j-1.0-beta9.jar
> is the same one with commons-logging-1.0.4.jar.  Please let me know if we
> can do so with M2.

That specific feature is planned for maven 2.1, but the way you do it now is:

<dependency>
  ...
  <artifactId>spring-core</artifactId>
  <exclusions>
    <exclusion>
      <groupId>commons-logging</groupId>
      <artifactId>commons-logging</artifactId>
    </exclusion>
  </exclusions>

> PS: BTW I've found a bug that an eclipse project file generated by 'mvn
> eclipse:eclipse' didn't include all JARs in the JRE such as jsse.jar.  That
> causes some build errors in Eclipse unfortunately.  I did work fine with M1.

I'm not familiar with that issue - can you ensure it has been reported?

Thanks,
- Brett

Mime
View raw message