Lines Matching +full:runtime +full:- +full:versions
1 <?xml version="1.0" encoding="UTF-8" ?>
2 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-st…
5 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
6 <link rel="stylesheet" href="resources/doc.css" charset="UTF-8" type="text/css" />
8 <title>JaCoCo - Class Ids</title>
28 Class ids are 64-bit integer values, for example
36 Class ids are used to unambiguously identify Java classes. At runtime execution
45 The concept of class ids allows distinguishing different versions of classes,
46 for example when multiple versions of an application are deployed to an
47 application server or different versions of libraries are included.
50 Also class ids are the prerequisite for JaCoCo's minimal runtime-overhead and
57 in setups where different classes are used at runtime and at analysis time.
60 <h3>What happens if different classes are used at runtime and at analysis time?</h3>
71 on the top-right corner. You see a list of all classes where execution data
75 runtime and the class provided to create the report.
80 Class ids are identical for the exact same class file only (byte-by-byte).
87 <li>Different compiler versions</li>
88 <li>Different compiler settings (e.g. debug vs. non-debug) </li>
91 Also post-processing class files (obfuscation, AspectJ, etc.) will typically
93 files for runtime as well as for analysis. So the tool chain to create these
98 classes seen by the JaCoCo runtime agent are different anyways. This typically
100 or special class loaders pre-process the class files. Typical candidates are:
108 <h3>What workarounds exist to deal with runtime-modified classes?</h3>
110 If classes get modified at runtime in your setup there are some workarounds to
120 executed at all will not show-up in your report as not covered.</li>
122 tests. This way classes get instrumented by JaCoCo before any runtime
135 when they are executed and report this to the JaCoCo runtime. This process is
136 called <i>instrumentation</i>. To keep the runtime overhead minimal, only a
157 runtime — e.g. different method ordering or additional branches —
158 we would end-up with different probes. For example the probe at index
163 <h3>Why do I get an error when I try to analyze multiple versions of the same
171 name within a group. Anyhow it is possible to analyze different versions of