1. 新建一个mock-search maven module
2. 将solr home configuation放到src/main/resource下
3. copy solr home 到project/target/下
<build>
<plugins>
<plugin>
<groupId>org.apache.openejb.maven</groupId>
<artifactId>tomee-maven-plugin</artifactId>
<configuration>
<systemVariables>
<my.development>true</my.development>
</systemVariables>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<executions>
<execution>
<id>copy-solr-home</id>
<phase>test-compile</phase>
<goals>
<goal>unpack</goal>
</goals>
<configuration>
<artifactItems>
<artifactItem>
<groupId>org.yourcompany</groupId>
<artifactId>mock-search</artifactId>
<type>jar</type>
<includes>solr/**</includes>
<outputDirectory>${project.build.directory}</outputDirectory>
</artifactItem>
</artifactItems>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
4. 在mock-search里初始化一个EmbededServer
// FIXME here - relative path?
System.setProperty("solr.solr.home", "../solr");
final CoreContainer container = new CoreContainer();
container.load();
SERVER = new EmbeddedSolrServer(container, "");
5. 现在的问题是,在tomee里,ctrl+C无法停止进程, 也许是tomee里启动的线程,无法关闭。