programing

스프링 응용 프로그램이 패키지 외부에서 시작되지 않음

padding 2023. 8. 11. 21:35
반응형

스프링 응용 프로그램이 패키지 외부에서 시작되지 않음

저는 Spring으로 기본 애플리케이션을 구축하기 위해 이 튜토리얼을 따릅니다.이 하위 디렉터리 구조를 따르는 한 완벽하게 작동합니다.

└── src
    └── main
        └── java
            └── hello

내가 움직이면,Application.java그리고.ScheduledTasks.javahello 패키지의 클래스에서 다음 오류가 발생합니다.

** 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

반응형