Hi,

 Having a look at the plugin code, it doesn't seem to be useful to add
log4j in your classpath.
 When tests are executed with cobertura, the following classpath entries
are added :
 <!-- global definitions -->
 <ant:path id="cobertura.classpath">
   <ant:pathelement path="${maven.build.dest}"/>
   <ant:pathelement path="${plugin.getDependencyPath
('urbanophile:java-getopt')}"/>
   <ant:pathelement path="${plugin.getDependencyPath
('javancss:javancss')}"/>
   <ant:pathelement path="${plugin.getDependencyPath('javancss:ccl')}"/>
   <ant:pathelement path="${plugin.getDependencyPath('asm')}"/>
   <ant:pathelement path="${plugin.getDependencyPath('oro')}"/>
   <ant:pathelement path="${plugin.getDependencyPath('log4j')}"/>
   <ant:pathelement path="${plugin.getDependencyPath('cobertura')}"/>
 </ant:path>

 For which class do you have a NoClassDefFoundError  ? Can't it be a
conflict between the version of log4J in your project and the one used in
the cobertura plugin ?

Arnaud


On 1/9/07, Srilakshmanan, Lakshman <
[EMAIL PROTECTED]> wrote:

Hi All,

I am using   maven-cobertura-plugin-1.2 & cobertura-1.8.
We have extended the org.apache.log4j.AppenderSkeleton class.

When cobertura tries to instrument the class a
java.lang.NoClassDefFoundError is thrown.

I have searched the mail archive and found mails referring to older
versions, and that it was fixed in cobertura-1.8. There are also mails
suggesting to add log4j in the project classpath.

Could someone please tell me if you have tried to extend the a log4j
class and if you experienced the same problem or am I just unlucky and
did something wrong in my implementation.

Is adding log4j to class path done as follows
  <dependency>
      <groupId>log4j</groupId>
      <artifactId>log4j</artifactId>
      <version>1.2.8</version>
      <url>log4j/jars</url>
      <properties>
          <classloader>root.maven</classloader>
      </properties>
    </dependency>

The funny part is, there is a message "adding dependency
/repository/log4j/jars/log4j-1.2.8.jar into project classloader". So I
don't quite believe adding log4j to the project classpath would resolve
the problem. I believe I need to add it to the classpath used by
cobertura and I don't believe it is using the project classpath.

Any help/suggestions is greatly appreciated.

Thanks in advance.

Thanks
Lakshman


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


Reply via email to