트러블슈팅

Spring App 실행 오류 2

깊게 생각하고 최선을 다하자 2022. 6. 8. 15:56

1. 문제에 대한 이해

  • 우리가 풀어야 할 문제는 무엇인가?
  • 주어진 자료는 무엇인가?
  • 조건은 무엇인가?
  • 우리가 문제를 풀기 위해 주어진 자료가 충분한가?
  • 숨겨진 조건이나 자료가 있는가? 그렇다면 그 것을 다른 방법으로 해석해보라.

- 문제가 무엇인가?

-> App.java를 실행하고 싶은데 실행할 수 없다

-> App.java에 SpringBootApplication이 있다.

-> 이것을 실행하고 싶다면 어떻게 하는가?

-> 생각을 해보자.

-> 실행을 한다는 것이 무엇인가?

-> 실행하는 케이스에는 어떤 케이스가 있는가?

-> 그 케이스는 왜 실행을 하고, 이 케이스는 실행을 하지 않는가?

- > Core2Application 프로젝트에는 Run이 있다.

-> 그런데 SpringWeek4 프로젝트에는 Run이 없다. 

-> 왜 이런 차이가 발생하는가?

-> 빌드된 결과물, out 폴더가 있고 없고의 차이가 있다.

-> 빌드가 왜 필요한가?

-> 이 점에 대해 잘 이해하고 있는가?

-> Project output path를 어떻게 지정하는가?

 

- java: error: release version 16 not supported

-> 이 의미가 무엇인가?

-> release version 16이 왜 필요한가?

-> 

 

java: package org.springframework.boot does not exist

-> 원인이 무엇일까?

-> 왜 이 패키지를 찾을 수 없을까?

-> 

 

- 왜 이것을 실행할 수 없을까?

-> static이 빠져서 그런 것이었음 

2. 계획

  • 전에 비슷한 문제를 알고 있는가?
  • 이 문제를 푸는데 있어서 유용하게 쓸 수 있는 지식은 무엇인가?
  • 비슷한 문제를 풀어본 적이 있다면 그 것을 활용할 수 있는가?
  • 만약 문제를 풀 수 없다면 문제를 더 단순하게 하기 위해서 주어진 조건을 버려보아라
  • 주어진 자료로부터 유용한 것을 이끌어 낼 수 있는가?
  • 자료는 모두 사용했는가?
  • 조건을 모두 사용했는가?
  • 문제에 포함된 핵심적인 개념은 모두 고려했는가?

3. 실행

  • 풀이 계획을 실행하고, 각 단계가 올바른지 점검하라.

4. 반성

  • 문제를 다른 방식으로 해결할 수 있는가?
  • 결과나 방법을 어떤 다른 문제에 활용할 수 있는가?
  • 어떻게 하면 더 효율적으로 문제를 해결할 수 있는가?
  • 어떻게 하면 더 효과적으로 문제를 해결할 수 있는가?

- Spring Application이 실행되기 위해서는 main 메소드가 필요하고,

  main 메소드는

  public void main(String[] args)가 아닌, 

  public static void main(String[] args)이다.

-> 사소한 오류에 주의를 기울이자. 

 

- 프로젝트는 완성도가 중요하다.