Solr在示例文件夹中附带了打包的jetty jar start.jar。对于我的scalatest自动化,我需要控制solr从我的scalatest模块开始和停止。我怎样才能做到这一点 ?请指导和建议。
答案 0 :(得分:1)
我written a JUnit rule用于集成测试。此规则启动和停止由Solr代表类JettySolrRunner
包装的Jetty服务器。
使用嵌入式Jetty启动Solr的相关部分是
File solrXml = new File("/solr/home/solr.xml");
File solrHomeDir = solrXml.getParentFile();
int port = 8080;
String context = "/solr";
// use org.apache.solr.client.solrj.embedded.JettySolrRunner
JettySolrRunner jettySolr
= new JettySolrRunner(solrHomeDir.getAbsolutePath(), context, port);
boolean waitUntilTheSolrWebAppHasStarted = true;
jettySolr.start(waitUntilTheSolrWebAppHasStarted);
停止该服务器非常简单
jettySolr.stop();