Uploaded image for project: 'Jenkins'
  1. Jenkins
  2. JENKINS-8761

Cobertura can't load my XML coverage reports

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Cannot Reproduce
    • Icon: Major Major
    • cobertura-plugin
    • None
    • Windows XP

      I don't know why, but my Jenkins can not load the cobertura XML coverage reports which I create in multiple subdirectories of my build.

      I use Cobertura v1.1 and Jenkins v1.396.

      The error message about duplicate JARs don't help me, and I'm really lost now.

      BUILD SUCCESSFUL
      Total time: 9 minutes 6 seconds
      ---------------------------------------
      java.lang.reflect.InvocationTargetException
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      at java.lang.reflect.Method.invoke(Method.java:597)
      at net.sourceforge.cobertura.util.FileLocker.lock(FileLocker.java:124)
      at net.sourceforge.cobertura.coveragedata.ProjectData.saveGlobalProjectData(ProjectData.java:234)
      at net.sourceforge.cobertura.coveragedata.SaveTimer.run(SaveTimer.java:31)
      at java.lang.Thread.run(Thread.java:619)
      Caused by: java.nio.channels.OverlappingFileLockException
      at sun.nio.ch.FileChannelImpl$SharedFileLockTable.checkList(FileChannelImpl.java:1176)
      at sun.nio.ch.FileChannelImpl$SharedFileLockTable.add(FileChannelImpl.java:1078)
      at sun.nio.ch.FileChannelImpl.lock(FileChannelImpl.java:834)
      at java.nio.channels.FileChannel.lock(FileChannel.java:860)
      ... 8 more
      ---------------------------------------
      Unable to get lock on C:\hudson\data\jobs\myHermes.co.uk. 1.6 Compile\workspace\hudson_myhermes\pn_development\projects\C2C_PortletIntegration\cobertura.ser.lock: null
      This is known to happen on Linux kernel 2.6.20.
      Make sure cobertura.jar is in the root classpath of the jvm
      process running the instrumented code. If the instrumented code
      is running in a web server, this means cobertura.jar should be in
      the web server's lib directory.
      Don't put multiple copies of cobertura.jar in different WEB-INF/lib directories.
      Only one classloader should load cobertura. It should be the root classloader.

            sogabe sogabe
            cringe cringe
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: