我在同一个项目中有两个源文件夹,一个名为layout
,另一个名为user
。 genLayout
源文件夹中有一个名为layout
的类,它为user
源文件夹中的类生成布局类(从给定类扩展)。以下是一些代码:
GenLayout loader = new GenLayout(interfaceClass);
byte[] bytes = loader.dump();
implClass = defineClass(null, bytes, 0, bytes.length);
问题是,一旦我运行jUnit测试用例,它就会抛出
java.lang.NoClassDefFoundError: com.user.types.Byte
com.user.types.Byte
是一个自定义类,与基本类型字节
如果我将所有文件放在同一个src文件夹中,测试用例就可以正常工作。
两个源文件夹具有不同的输出文件夹,一个名为layout_bin
,另一个名为user_bin
这是.classpath文件:
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
<classpathentry kind="src" output="layout_bin" path="layout"/>
<classpathentry kind="src" output="user_bin" path="user"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
<classpathentry kind="lib" path="/VM_Test/VM/lib/junit-4.10.jar"/>
<classpathentry kind="lib" path="/VM_Test/VM/lib/asm-all-4.0.jar"/>
<classpathentry kind="output" path="bin"/>
</classpath>