2016-12-23 1 views
0

분명히 다른 스레드에서 읽는 것처럼 ConfigurableApplicationContext를 닫으면 .exit이 사용되며 많은 방법으로 구현 될 수 있음을 알았습니다. 내가 출구 부분을 배치 할 때 난 로그인 페이지가스프링 부트 [적절하게 .exit을 사용하는 방법]

를 표시하지 않습니다, 지금 출구 부분 OUT /, 괜찮 실행 승 나는이 프로그램을 실행하면 ... 다음과 같이

public static void main(String[] args) throws Exception { 
    SpringApplication app = new SpringApplication(Application.class); 
    ConfigurableApplicationContext applicationContext = app.run(args); 
    app.exit(applicationContext); 
} 

를 사용하려고했으나

답변

0

달성하려는 목표는 무엇입니까?

exit는 컨텍스트 (따라서 응용 프로그램)를 중지하는 방법입니다. 정상적으로 문맥을 종료하는 데 사용됩니다. exitCode를 반환 할 가능성이 있습니다.

public static void closeApp(SpringApplication app, ConfigurableApplicationContext context) { 
    final int exitCode = 5; 
    ExitCodeGenerator exitCodeGenerator = new ExitCodeGenerator() { 

     @Override 
     public int getExitCode() { 
      return exitCode; 
     } 
    }; 
    app.exit(context, exitCodeGenerator); 
} 

public static void main(String[] args) throws Exception { 
    SpringApplication app = new SpringApplication(Application.class); 
    ConfigurableApplicationContext applicationContext = app.run(args); 
    shutdown(app, applicationContext); // this shoud prints "Process finished with error code 5" 

} 

}

관련 문제