I ran into this trying to research
SOLR-3015. For a QParserPlugin, there seems to be two instances created. The init() method is called for each. The same is true for a SearchComponent. If the SearchComponent is made SolrCoreAware, and a CloseHook is added, the close hook is properly called once per instance, but nevertheless the stated plugin lifecycle as described in the wiki seems to indicate that there should be only ONE instance.
Note that this is being run inside a test, which is derived from SolrTestCaseJ4, which could conceivably have something to do with it. I haven't confirmed whether or not this occurs on 3.x as well as trunk, but it certainly happens reliably enough on trunk.