Repository: micronaut-projects/micronaut-core
Issue: Regression on bean with preDestroy 

My project has a factory that replaces the `DefaultMongoClientFactory`:

```kotlin
@Requirements(Requires(beans = [DefaultMongoConfiguration::class]), Requires(classes = [MongoClient::class]))
@Replaces(factory = DefaultMongoClientFactory::class)
@Factory
class KMongoClientFactory {

    companion object: KLogging()

    @Bean(preDestroy = "close")
    @Singleton
    fun kmongoClient(configuration: DefaultMongoConfiguration): MongoClient {
        logger.debug { "===== KMongo creating client for ${configuration.uri}" }
        val client = KMongo.createClient(MongoClientURI(configuration.uri))
        return client
    }
}
```

This was working last week, but I am now seeing this error:

```
$ ./gradlew test
$ ./gradlew test
e: /Users/mmindenhall/projects/micronaut-examples/hello-world-kotlin/build/tmp/kapt3/stubs/main/example/KMongoClientFactory.java:19: error: @Bean method defines a preDestroy method that does not exist or is not public: close
    public final com.mongodb.MongoClient kmongoClient(@org.jetbrains.annotations.NotNull()
                                         ^
```

It seems likely that this was caused by the recent fix for #1267.

### Task List

- [x] Steps to reproduce provided
- [x] Stacktrace (if present) provided
- [x] Example that reproduces the problem uploaded to Github
- [x] Full description of the issue provided (see below)

### Steps to Reproduce

1. Clone [my fork of micronaut-examples](https://github.com/mmindenhall/micronaut-examples)
1. `cd micronaut-examples`
1. `git checkout pre-destroy-regression`
1. `cd hello-world-kotlin`
1. `./gradlew test`

Note that if this is executed against micronaut 1.1.0.M1 instead of 1.1.0.BUILD-SNAPSHOT, the tests all pass:

1. Edit `gradle.properties`
1. Change micronaut version (comment out line 2, uncomment line 3), save changes
1. `./gradlew test`

### Expected Behaviour

Everything passes.

### Actual Behaviour

The factory returns an instance of `MongoClient`, which implements the `Closeable` interface (and therefore the public `close` method).  Micronaut is erroneously reporting the error above.

### Environment Information

- **Operating System**: macOS 10.14.3
- **Micronaut Version:** 1.1.0.BUILD-SNAPSHOT
- **JDK Version:** 1.8.0_191

### Example Application

See steps to reproduce above.



Changed files:
inject-java/src/main/java/io/micronaut/annotation/processing/ModelUtils.java

diff --git a/inject-java/src/main/java/io/micronaut/annotation/processing/ModelUtils.java b/inject-java/src/main/java/io/micronaut/annotation/processing/ModelUtils.java
index 0929252063..4696741dd0 100644
--- a/inject-java/src/main/java/io/micronaut/annotation/processing/ModelUtils.java
+++ b/inject-java/src/main/java/io/micronaut/annotation/processing/ModelUtils.java
@@ -202,7 +202,7 @@ public class ModelUtils {
      * @return The executable element
      */
     Optional<ExecutableElement> findAccessibleNoArgumentInstanceMethod(TypeElement classElement, String methodName) {
-        return ElementFilter.methodsIn(classElement.getEnclosedElements())
+        return ElementFilter.methodsIn(elementUtils.getAllMembers(classElement))
                 .stream().filter(m -> m.getSimpleName().toString().equals(methodName) && !isPrivate(m) && !isStatic(m))
                 .findFirst();
     }