스프링 응용 프로그램이 패키지 외부에서 시작되지 않음
저는 Spring으로 기본 애플리케이션을 구축하기 위해 이 튜토리얼을 따릅니다.이 하위 디렉터리 구조를 따르는 한 완벽하게 작동합니다.
└── src
└── main
└── java
└── hello
내가 움직이면,Application.java
그리고.ScheduledTasks.java
hello 패키지의 클래스에서 다음 오류가 발생합니다.
** WARNING ** : Your ApplicationContext is unlikely to start due to a `@ComponentScan` of the default package.
그리고 몇 초 후에, 정말로...
java.lang.IllegalStateException: ApplicationEventMulticaster not initialized - call 'refresh' before multicasting events via the context: org.springframework.context.annotation.AnnotationConfigApplicationContext@71fa8894: startup date [Wed Jan 18 22:19:12 CET 2017]; root of context hierarchy
제 질문은, 왜 제 수업을 패키지에 넣어야 하나요?그것이 무슨 소용이 있습니까?이 오류를 방지하려면 어떻게 해야 합니까?정말 간단한 애플리케이션이라면 패키지를 꼭 사용해야 합니까?
Java 파일을 다시 저장할 위치hello
꾸러미
클래스에 패키지 선언이 포함되지 않은 경우 "기본 패키지"로 간주됩니다.일반적으로 "기본 패키지"를 사용하는 것은 권장되지 않으며, 사용하지 않아야 합니다.
이는 사용하는 Spring Boot 애플리케이션에 특히 문제를 일으킬 수 있습니다.@ComponentScan
,@EntityScan
또는@SpringBootApplication
주석, 모든 병의 모든 클래스가 읽히기 때문입니다.
자세한 내용은 여기를 참조하십시오.
@SpringBootApplication으로 주석이 달린 클래스를 기본 패키지에서 특정 패키지로 이동했더니 작동했습니다.
저는 자바 폴더가 마지막 폴더인 빈 메이븐 폴더를 만들었습니다.Main Application 클래스를 추가했습니다.
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class MainApplication {
public static void main(String[] args) {
SpringApplication.run(MainApplication.class, args);
}
}
또한 com.test와 같은 Java 폴더 내에 패키지를 생성해야 했고, 이 패키지로 MainApplication 클래스를 이동했습니다."package com.test"를 참고하십시오. 이제 이 기본 패키지는 Spring boot에서 찾고 있습니다.
package com.test;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class MainApplication {
public static void main(String[] args) {
SpringApplication.run(MainApplication.class, args);
}
}
그럼 잘 됐어요.
언급URL : https://stackoverflow.com/questions/41729712/spring-application-does-not-start-outside-of-a-package
'programing' 카테고리의 다른 글
Excel은 다시 입력하지 않는 한 VBA 함수가 있는 공식을 오차로 계산하고 있습니다. (0) | 2023.08.16 |
---|---|
MySQL이 밀리초/마이크로초 정밀도를 지원하지 않는 이유는 무엇입니까? (0) | 2023.08.11 |
Vuex Axios 헤더에서 Uncaught TypeError를 반환함: 개체(...)가 Vuex의 함수가 아님 (0) | 2023.08.11 |
스토리보드에서 인터페이스를 설정하는 Swift의 UIViewController에 대한 사용자 정의 init (0) | 2023.08.11 |
php mysql 쿼리를 사용하여 양식 데이터를 데이터베이스에 삽입할 수 없습니다. (0) | 2023.08.11 |