고민있어요
혹시 gradle 로 bootJar 실행 시 안되시는 분들
- 좋아요수
- 0
- 댓글수
- 0
- 조회수
- 334
고민있어요
질문&답변
깃허브에서 확인되었습니다. 감사합니다~~!
고민있어요
고민있어요
고민있어요
질문&답변
좋은 정보 알아갑니다. 감사합니다.
고민있어요
고민있어요
질문&답변
ClassPathResource 방식은 Jar 파일에서는 파일 경로를 찾을 수 없나봅니다. 구글링 해보니 결론은 InputStream 으로 바꿔서 해줘야한다고 하네요. @PostConstruct public void initZoneData () throws IOException { if ( zoneRepository . count () == 0 ) { Resource resource = new ClassPathResource ( "zones_kr.csv" ); InputStreamReader inputStreamReader = new InputStreamReader ( resource . getInputStream (), StandardCharsets . UTF_8 ); BufferedReader br = new BufferedReader ( inputStreamReader ); StringBuilder sb = new StringBuilder (); int i = 0 ; while ( i 85 ) { sb . append ( br . readLine ()); sb . append ( " \n " ); i ++; } String s = sb . toString (); String [] zones = s . split ( " \n " ); List Zone > zoneList = Arrays . stream ( zones ). map ( line -> { String [] split = line . split ( "," ); return Zone . builder () . city ( split [ 0 ]) . localNameOfCity ( split [ 1 ]) . province ( split [ 2 ]) . build (); }). collect ( Collectors . toList ()); zoneRepository . saveAll ( zoneList ); } } 이런식으로 하니 jar에서도 잘 되긴 합니다. 원래는 while(true)로 하고 안에서 br.readLine 이 null이면 break 해주면 되는걸로 아는데, 이상하게 그렇게하면 계속 에러가 나네요. 아무튼 Jar파일에서도 실행하시려면 위처럼 하시면 될겁니다. 일단 저는 잘됩니다.
질문&답변
자문자답입니다만 다음 강의에서 나오는군요! 좋은 강의 감사드립니다.