Ich habe eine Spring-Boot-Anwendung, und ich möchte eine Abhängigkeit in Feder Boot geschrieben, die einige Controller definiert.Spring Boot und Controller in importierten Modulen
Vielleicht ist es einfach, aber wie kann ich die Hauptanwendung in der Lage, alle diese Controller im importierten Modul zu initialisieren? Wenn ich versuche, auf den Pfad zu diesen Controllern zuzugreifen, erhalte ich einen Fehler für die fehlende Handler-Methode für den angegebenen Pfad. Ich habe versucht, wie folgt:
@SpringBootApplication
@ComponentScan(basePackages = {"com.main.project", "com.imported.dependency"})
public class MyApplication
implements CommandLineRunner {
public static void main(final String... args) {
SpringApplication app = new SpringApplication(MyApplication.class);
app.setWebEnvironment(true);
app.run(args);
}
}
das heißt ich mit @ComponentScan
versucht, aber nichts passiert.
Ich habe auch versucht geladen werden, wenn die Controller zu sehen:
ApplicationContext ctx = SpringApplication.run(FrontendApplication.class, args);
System.out.println("Let's inspect the beans provided by Spring Boot:");
String[] beanNames = ctx.getBeanDefinitionNames();
Arrays.sort(beanNames);
for (String beanName : beanNames) {
System.out.println(beanName);
}
Sie nicht sind. Ich habe versucht, @SpringBootApplication
zu entfernen und @EnableAutoConfiguration
und @ComponentScan
zu verwenden, aber das funktioniert nicht.
Vorschläge?
Sie falsch geschrieben "Abhängigkeit" auf ComponentScan. –
Ok, das ist ein Tippfehler in meinem Beispiel. Es ist nicht der echte Paketname. Die eine, die ich benutze funktioniert gut –
Haben Sie versucht, sie im SpringApplication Konstruktor auflisten? z.B. SpringApplication-App = neue SpringApplication (MyApplication.class, MyAnnotatedBean.class); –