2012-02-28 78 views
0

当我尝试从Eclipse的一个Solr的运行测试用例(右键单击>运行方式> JUnit测试),我得到以下打印到Eclipse控制台:如何在Eclipse中调试Solr测试用例?

Feb 27, 2012 5:21:06 PM org.apache.solr.SolrTestCaseJ4 deleteCore 
INFO: ###deleteCore 

全过程,并很快退出无需运行实际的测试用例。

我试图根据http://wiki.apache.org/solr/TestingSolr的指示设置我的工作目录无济于事。这些指令指的是一个实际上不再存在的目录(src/test/test-files),所以我尝试将它设置为solr/core/src/test-files,没有任何运气。我正在使用最新的SOLR中继线(截至2012年2月27日)

我错过了什么?

+1

你是什么测试用例?你可以发布代码吗? – RoiG 2012-02-28 06:45:31

+0

我试图运行org.apache.solr.TestDistributedSearch。它是一个从LuceneTestCase类继承的大类,由LuceneTestCaseRunner运行。我运行的特定测试用例并不重要,因为我对所有solr测试用例都有相同的行为。 – killdash9 2012-02-28 16:08:59

回答

1

从你自己的答案看起来像你加入到classpath中包含的代码的jar其中应该已经存在于你的工作空间中,因此在你的类路径中。 Solr构建文件有一个非常方便的eclipse目标,可以生成eclipse项目,因此您可以通过一次单击将其导入。从根目录运行ant eclipse,你不应该有类路径的问题。

1

我以前没有注意到这一点,但测试用例是抛出一个异常,说

A SPI class of type org.apache.lucene.codecs.Codec with name 'Lucene40' does not exist. You need to add the corresponding JAR file supporting this SPI to your classpath.The current classpath supports the following names: [] 

我加入的Lucene /编译/核心/ Lucene的核心-4.0-SNAPSHOT.jar来解决的问题测试用例的运行配置中的类路径。感觉我不应该这样做,但我没有时间进一步调查。

如果其他人可以告诉我如何消除这种依赖关系,我会将答案归功于你。

我也有我的运行配置设置工作目录到Solr /核心/ src目录/测试文件

+1

您是否先运行ant eclipse命令?我的意思是,你正在向类路径中添加一个包含代码的jar,该代码应该已经存在于你的工作空间中,因此在你的类路径中。 – javanna 2012-02-29 08:42:41

+0

我不知道有一个'蚂蚁eclipse'的目标。这就是诀窍!我之前亲自设立了这个项目。 – killdash9 2012-03-01 06:00:45

+0

太棒了,我将我的评论添加为答案。 – javanna 2012-03-01 08:19:35