9월 일기

정수현·2025년 9월 30일

자격증 공부 탓에 9월에 다 끝내려했던 소셜 로그인 인강을 이제서야 듣기 시작했다. ㅎㅎ
나에겐 이제 새 학기 시작이다 !

9월 30일 화요일 (1)

  1. 인프런에서 소셜 로그인 인강을 드디어 수강하기 시작했다. MySQL이며 Spring Boot며 언어 버전 설정 다시하고 새로 설치하느라 살짝 오래 걸렸다. Spring Boot는 Gradle 버전밖에 사용해보지 못 했는데, 이 인강에서는 Maven으로 다루기 때문에 일단 따랐다 ...

  2. Java 17을 먼저 설치해둔 상태라 21로 변경했다. 여러 개의 버전을 선택하여 바꾸는 방법으로 두 가지가 있었다. 첫번째는 환경 변수의 Path에서 jdk 파일의 경로를 각각 입력해 원하는 버전을 더 상위에 위치시키는 방법이고, 두번째는 환경 변수의 JAVA_HOME에 원하는 Java 버전의 경로를 입력한 후, Path에서 %JAVA_HOME%\bin 을 입력해두는 방법이다. 매번 헷갈렸었는데 이번 기회에 알게 되었다.

  3. Maven 기반으로 Spring Boot 프로젝트를 생성했다. 소셜 로그인에 대해 다루기 때문에 의존성으로 OAuth2 ClientSpring Security를 추가하였다. 프로젝트를 생성 후, 압축 파일을 풀어 IntelliJ로 실행했다. 그러나 Maven의 버전과 Java 21의 버전이 서로 호환되지 않아 에러가 발생했다. 해결은 간단했다. pom.xml 파일에서 <properties>를 찾아 아래와 같이 마지막 두 줄만 추가하니까 해결 됐다.

<properties>
    <java.version>21</java.version>
    <maven.compiler.source>21</maven.compiler.source>
    <maven.compiler.target>21</maven.compiler.target>  
</properties>
  1. 위 문제를 해결하고 재실행하니 다른 문제가 발생하였다. JPA나 JDBC 의존성을 함께 설치했을 때 연결되는 데이터베이스가 없으면 에러가 발생한다. 이 또한 pom.xml 파일에서 <dependencies> 블록 아래에 아래와 같은 코드를 삽입하니 해결 됐다.
<dependency>
    <groupId>com.h2database</groupId>
    <artifactId>h2</artifactId>
    <scope>runtime</scope>
</dependency>
  1. pom.xml 파일을 수정하고 저장 후 다시 로드할 때엔 오른쪽은 Maven 탭에서 '모든 Maven 프로젝트 다시 로드'를 클릭한다.

9월 30일 화요일 (2)

  1. 여름 학기에 진행했던 EduScript를 양 교수님께서 목요일에 사용해보고 싶다고 하셔서 중국어 자막 실행을 테스트 했다. 현재 미니 PC 백그라운드에서 서버를 실행하고 로그를 메모장(.txt)에 출력하고 있다.

  2. 이때 발생한 문제는 메모장의 인코딩 방식이었다. 예전에도 디버깅 로그에 작성된 이모티콘 때문에 실행이 안된 적이 있다. 그러나 이번엔 중국어 문자를 메모장에 ANSI 방식으로 입력할 수 없어 발생한 에러였다.

  3. 그러니까 아래와 같은 흐름이다. 처음에 로그를 utf-8로 저장되도록 .bat 파일을 수정해보았으나, 아무래도 운영체제의 기본 방식이 ANSI로 고정되어 있어 .bat 파일을 아무리 수정해도 해결되지 않았다.

① [클라 -> 서버] 음성 전송 
② [서버] STT 변환 + 번역 
③ [서버] 메모장에 로그 출력 -> 인코딩 에러 
④ [서버 -> 클라] 번역 텍스트를 출력하던 중 번역 중단 
  1. 로그를 저장하지 않고 서버를 실행해보니 중국어 자막이 잘 출력돼서 아예 윈도우의 기본 언어 설정을 utf-8로 변경하였다. 생각보다 쉬운 문제였다 ㅎ...

0개의 댓글