How to add the target jar as a test resource of the same project?
I'm developing a Solr plugin and using the Solr test-framework I place a test SOLR_HOME
dir under test/resources
with /conf/
and /lib
. Now the framework inistantiates a SolrCore
and loads my plugin from /lib
. Not an issue to output the jar of the plugin to /lib
, but the issue is that the plugin is not yet available since it still needs to past the test (chicken and the egg).
How do you recommend solving this? I see those options:
Create another project for the tests with a dependency on the plugin, and in it run the tests. Simple enough, but how do I ensure that everytime the plugin is built also the tests of this other project is built? The point of the automated tests at every build is to having a new plugin jar which breaks the tests.
In dp4j pom.xml I build the project on 2 phases, in the 1st I
<include>
only the annotation processors while in the other I compile the tests which rely on the annotation processors compiled in the eariler phase.
I'm in favor of 2 since copy-pasting the configuration doesn开发者_Go百科't seem a bad option, and makes it seem less complicated than it probably is. I don't remember if I had asked about it here - what do you recommend? Any other case studies /working code to look at?
there's a 3rd. most probably best solution ~ do nothing!
I was under the impression that the Solr Testframework need to load my plugin from /lib
but apparently it doesn't need to, it can load it from test-classes
, all on its own!
精彩评论