- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我得到以下新的异常 cobertura (2.0.2..) .我想这与在新 block 中立即创建新对象有某种关系。
WARN instrumentClass, Unable to instrument file c:\apps\ijprojects\TrickyInstrument\out\production\TrickyInstrument\InstrumentationFailsOnFirstNewClassInTryBlock.class
java.lang.RuntimeException: java.lang.ClassNotFoundException: DataAccess
at org.objectweb.asm.ClassWriter.getCommonSuperClass(Unknown Source)
at org.objectweb.asm.ClassWriter.a(Unknown Source)
at org.objectweb.asm.Frame.a(Unknown Source)
at org.objectweb.asm.Frame.a(Unknown Source)
at org.objectweb.asm.MethodWriter.visitMaxs(Unknown Source)
at org.objectweb.asm.MethodVisitor.visitMaxs(Unknown Source)
at org.objectweb.asm.util.CheckMethodAdapter.visitMaxs(Unknown Source)
at org.objectweb.asm.MethodVisitor.visitMaxs(Unknown Source)
at org.objectweb.asm.commons.LocalVariablesSorter.visitMaxs(Unknown Source)
at org.objectweb.asm.tree.MethodNode.accept(Unknown Source)
at org.objectweb.asm.util.CheckMethodAdapter$1.visitEnd(Unknown Source)
at org.objectweb.asm.MethodVisitor.visitEnd(Unknown Source)
at org.objectweb.asm.util.CheckMethodAdapter.visitEnd(Unknown Source)
at org.objectweb.asm.ClassReader.b(Unknown Source)
at org.objectweb.asm.ClassReader.accept(Unknown Source)
at org.objectweb.asm.ClassReader.accept(Unknown Source)
at net.sourceforge.cobertura.instrument.CoberturaInstrumenter.instrumentClass(CoberturaInstrumenter.java:204)
at net.sourceforge.cobertura.instrument.CoberturaInstrumenter.instrumentClass(CoberturaInstrumenter.java:121)
at net.sourceforge.cobertura.instrument.CoberturaInstrumenter.addInstrumentationToSingleClass(CoberturaInstrumenter.java:233)
at net.sourceforge.cobertura.instrument.Main.addInstrumentationToSingleClass(Main.java:274)
at net.sourceforge.cobertura.instrument.Main.addInstrumentation(Main.java:283)
at net.sourceforge.cobertura.instrument.Main.addInstrumentation(Main.java:292)
at net.sourceforge.cobertura.instrument.Main.parseArguments(Main.java:373)
at net.sourceforge.cobertura.instrument.Main.main(Main.java:395)
8 Jul, 2013 2:05:07 PM net.sourceforge.cobertura.coveragedata.CoverageDataFileHandler saveCoverageData
INFO: Cobertura: Saved information on 2 classes.
以下是与上述异常相关的代码。
public class InstrumentationFailsOnFirstNewClassInTryBlock {
public void saveToDatabase() {
//
try {
// boolean b=false;
// if ( b) {
// System.out.println("no action");
// }
DataAccess da = new DataAccess();
System.out.println("nothing");
} catch (Exception e) {
}
}
}
class DataAccess {
public DataAccess() {
//To change body of created methods use File | Settings | File Templates.
}
}
如果我取消注释代码块中的一些伪语句,那么检测工作正常。有人看过这个吗?任何潜在的修复?
编辑:java6 和 java7 出现错误。
最佳答案
最初的问题是由于 Cobertura 缺陷造成的。它不是固定的。 Cobertura 现在支持 auxillary classpath. 的附加参数.这将用于解析检测所需的任何类。
cobertura-ant task documentation
Adding auxClasspath
auxClasspath argument is designed to remove the ClassNotFoundException during instrumentation. See https://github.com/cobertura/cobertura/wiki/FAQ#classnotfoundexception-during-instrumentation for more information on this argument
关于java.lang.RuntimeException : java. lang.ClassNotFoundException : <org. objectweb.asm.ClassWriter.getCommonSuperClass(未知来源)>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17522385/
What I am trying to do? 我正在尝试在特定方法的开头和结尾添加 try/catch 块。 Why am I overriding asm.ClassWriter.getCommo
检测错误 java.lang.RuntimeException: java.lang.ClassNotFoundException: Deposit at org.objectweb.asm.
当我运行使用 hibernate 的 java 应用程序时,出现此错误: java.lang.NoSuchMethodError: org.objectweb.asm.ClassWriter 我添加了
使用 Asm 定义简单的 getter 和 setter 很容易(幸运的是,它甚至在他们的 FAQ 中有解释)。但是没有提到的一件事是如何使用通用类型信息来实现这些,我一直无法找到文档。 我实际上能够
我一直在开发一个与 maven-surfire-plugin 一起运行的 Java 代理。代理应该能够在三个不同的点将使用 ASM 库的方法调用注入(inject)到加载的方法中: 1) 在每个方法的
我是 grappa 的维护者.此包通过使用 ASM 生成一个扩展您的解析器类的类,在运行时从 Java 代码生成解析器。 我已经从 ASM 4 迁移到 ASM 5,从生成 JVM 1.5 字节码迁移到
负责为 JDTCompiler 编写类文件的类是什么?相当于 javac 的 com.sun.tools.javac.jvm.ClassWriter 的类? 谢谢 最佳答案 为了在这里结束循环,让我引
我在尝试加载我使用 ASM 生成的类时收到预期的 ClassVerifyErrors。在进一步检查中,我可以看到 jvm 是正确的,并且所讨论的方法具有无效的 MAX_STACK 值。奇怪的是我正在使
我正在使用 Jasper Reports 并在我的类路径中使用以下库 jasperreports-4.5.1.jar common-digester3-3.2.jar common-digester2
我正在开发一个小型 Spring 应用程序。我必须将学生信息的详细信息存储在数据库中。我开发了一个 SimpleFormController。我使用过 NetBeans + Hibernate 映射
我得到以下新的异常 cobertura (2.0.2..) .我想这与在新 block 中立即创建新对象有某种关系。 WARN instrumentClass, Unable to instrum
我在我的应用程序中使用 spring 和 hibernate。为了构建 REST API,我使用 jersey,它是一个基于 gradle 的项目。这些是我在 build.gradle 中指定的依赖项
我是一名优秀的程序员,十分优秀!