Hi Ralf,

You're touching a quite interesting subject as some quality metrics are
partially or even totally wrong in some cases when analyzing all Maven
projects in isolation. This is particularly true when dealing with Robert C.
Martin metrics collected for instance with JDepends library. Indeed,
Afferent and Efferent Coupling values can greatly change when you analyze
the sources of a Maven module (let's say an API) without taking into account
all the Maven modules which depend on it.

This can be also useful when you're looking for dead public methods or
looking for copy/paste between Maven modules. I haven't yet any solution to
solve this issue but, at least, I share your need.

Freddy


On Tue, Sep 29, 2009 at 12:34 PM, ifsNabble <[email protected]>wrote:

>
> It´s quite simple:
> Let´s say you have a class A which is a central class in your application.
> And you have 5 Maven projects that are using the class A.
>
> If you do code analysis on Project 1 you will see that the class A is used
> by one class in project 1 - because you have only the project 1 in you
> focus.
> So you won´t assume that class a could be an important central class,
> because you don´t know the code of the other projects.
>
> So my approach is to focus every project in my application.
> In my example you will then copy all the code of Project 1, Project 2 ...
> and Project 5 into one folder and analyze it together.
> Then you will see that class A is used by many, many classes from all the
> projects. And you will know that refactoring class A isn´t dead easy,
> because now you have the overview - which you don´t have when focussing
> only
> a single project.
>
> Ralf
>
> to see which classes are using another class you have to have the code of
> both.
> If you have the classes in different Maven projects you
>
>
>
> Quintin Beukes-2 wrote:
> >
> > I don't have experience with this. Why exactly does all code need to
> > be together?
> >
> > Quintin Beukes
> >
> >
> >
> > On Tue, Sep 29, 2009 at 10:38 AM, ifsNabble
> > <[email protected]> wrote:
> >>
> >> Hi Quintin,
> >>
> >> I´m starting automatic build in Hudson with Maven target "mvn compile".
> >> Then all tests are run and with Sonar-Plugin the code quality is anlyzed
> >> and
> >> published in Sonar.
> >> The quality metrics rely on JUnit (-> Surefire), PMD, Cobertura etc. and
> >> some specialties where object coupling, depth of inheritance tree etc.
> is
> >> computed.
> >> And for these special metrics I need all code together during
> >> compilation.
> >>
> >> Ralf
> >>
> >>
> >> Quintin Beukes-2 wrote:
> >>>
> >>> Yes, writing an ant script that merges projects into a temporary place
> >>> is an ugly solution.
> >>>
> >>> What are you using for the code quality analysis?
> >>>
> >>> Quintin Beukes
> >>>
> >>>
> >>>
> >>> On Tue, Sep 29, 2009 at 10:24 AM, ifsNabble
> >>> <[email protected]> wrote:
> >>>>
> >>>> Hi all!
> >>>>
> >>>> I´m stuck with following problem:
> >>>>
> >>>> My Project consists of about 150 Maven projects. All of them are
> >>>> somehow
> >>>> dependent on each other.
> >>>> I´m able to build and analyze code quality for every single project.
> >>>> But to analyze special metrics I need all source code together in one
> >>>> folder. And there´s my problem.
> >>>>
> >>>> I could create a stupid dummy ant script that copies every code from
> >>>> /src/main/java to the common source folder. And then I start analyzing
> >>>> this.
> >>>> But that´s not really what I want. Apart from that I do need a new
> >>>> pom.xml
> >>>> for the new all-embracing project. And then I´m at the point where I
> >>>> have
> >>>> to
> >>>> copy/paste the source code from the single projects to the "big"
> >>>> project.
> >>>>
> >>>> I thought about using module for solving my problem, but I don´t know
> >>>> if
> >>>> that suits my needs?
> >>>>
> >>>> I´m using Eclipse and m2eclipse-Plugin, Hudson as build tool and Sonar
> >>>> as
> >>>> code quality analyzer.
> >>>> Our platform is Windows.
> >>>>
> >>>> Does anyone have some suggestions or best practices for my problem?
> >>>> I´m sure I´m not the first one facing such problems.
> >>>>
> >>>> The main pre-conditions for the solution are:
> >>>> - I don´t want to change the structure of my projects (e.g. merge some
> >>>> projects together)
> >>>> - I´d like to use as many native Maven tools as possible (plugins,
> >>>> techniques like modules, ...) and avoid using handmade solutions like
> >>>> copy&paste or writing ant scripts
> >>>>
> >>>> Thanks already!
> >>>> --
> >>>> View this message in context:
> >>>>
> http://www.nabble.com/How-to-implement-Code-Quality-Analysis-on-multiple-Maven-Projects--tp25658865p25658865.html
> >>>> Sent from the Maven - Users mailing list archive at Nabble.com.
> >>>>
> >>>>
> >>>> ---------------------------------------------------------------------
> >>>> To unsubscribe, e-mail: [email protected]
> >>>> For additional commands, e-mail: [email protected]
> >>>>
> >>>>
> >>>
> >>> ---------------------------------------------------------------------
> >>> To unsubscribe, e-mail: [email protected]
> >>> For additional commands, e-mail: [email protected]
> >>>
> >>>
> >>>
> >>
> >> --
> >> View this message in context:
> >>
> http://www.nabble.com/How-to-implement-Code-Quality-Analysis-on-multiple-Maven-Projects--tp25658865p25659063.html
> >> Sent from the Maven - Users mailing list archive at Nabble.com.
> >>
> >>
> >> ---------------------------------------------------------------------
> >> To unsubscribe, e-mail: [email protected]
> >> For additional commands, e-mail: [email protected]
> >>
> >>
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: [email protected]
> > For additional commands, e-mail: [email protected]
> >
> >
> >
>
> --
> View this message in context:
> http://www.nabble.com/How-to-implement-Code-Quality-Analysis-on-multiple-Maven-Projects--tp25658865p25660550.html
> Sent from the Maven - Users mailing list archive at Nabble.com.
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [email protected]
> For additional commands, e-mail: [email protected]
>
>

Reply via email to