我已经通过多种方式尝试过(谷歌,Stack Overflow ...),并且几天后解决了以下错误而没有成功。只有在运行应用程序时才会出现此错误。编译不受影响。
org.databene.commons.ConfigurationError:找不到类:'org.databene.benerator.engine.DefaultBeneratorFactory' 在org.databene.commons.ExceptionMapper.configurationException(ExceptionMapper.java:121) 在org.databene.commons.BeanUtil.forName(BeanUtil.java:358) 在org.databene.commons.BeanUtil.newInstance(BeanUtil.java:423) 在org.databene.benerator.BeneratorFactory.getInstance(BeneratorFactory.java:56) 在org.databene.benerator.util.GeneratorUtil.init(GeneratorUtil.java:54) 在testGeneration.TestCaseGenerator.generateTests(TestCaseGenerator.java:326)
也就是说,如果我尝试实例化DefaultBeneratorFactory类的对象,则不会出现任何问题。当我调用方法来启动生成器时,错误会显现出来:
GeneratorUtil.init(stringGenerator);
我开发的应用程序是OS X El Capitan中Intellij Idea Community Edition(版本2016.2.4)的插件。 Java环境是Oracle JDK 8u102。我的插件使用Databene Benerator框架,可以作为一组Jars下载。我在项目中将相应的jar包含为Libraries:
The libraries in Project Settings
请参阅依赖项:
The dependencies in Project Settings
我遵循了一些建议:
1)标记每个Jar的导出选项。 Link
2)更改输出路径和设置全局库。 Link
3)使用以前版本的IDEA,尝试更早的JDK,无效的IDEA缓存。
另一个重要信息,我的插件的Eclipse版本在相同的环境中完全正常运行,具有相同版本的Benerator框架。所以,我认为IDEA有一些特殊性。
非常感谢任何帮助!!
我认为问题在于Intellij Idea如何处理jar中的类。 DefaultBeneratorFactory.class位于正确路径的jar中:org / databene / benerator / engine。有谁能解释一下?
答案 0 :(得分:0)