[ 팁 ] 2019 카카오 블라인드 공채 2차 오프라인 - Elevator --- ① 서버실행

金弘均·2021년 10월 15일
0

Tip

목록 보기
1/6
post-thumbnail

# Environment

  • OS : windows 10
  • Terminal : Git Bash (관리자모드로 실행!!!)

# Problem

https://github.com/kakao-recruit/2019-blind-2nd-elevator
여기서 하라는 대로 했는데...

$ git clone https://github.com/kakao-recruit/2019-blind-2nd-elevator.git $GOPATH/src/2019-blind-2nd-elevator
$ cd $GOPATH/src/2019-blind-2nd-elevator/elevator/cmd/elevator/
$ go get ./  <= 여기서!!!
$ go build
$ ./elevator

다음과 같은 에러를 얻었다

cannot find package "github.com/hashicorp/hcl/hcl/printer" in any of:
        C:\Program Files\Go\src\github.com\hashicorp\hcl\hcl\printer (from $GOROOT)
        C:\Users\Kms\go\src\github.com\hashicorp\hcl\hcl\printer (from $GOPATH)

왜 안되지...


# Cause

무수한 구글링을 거친 결과

https://www.vompressor.com/go-mod/

Go는 1.11 버전부터 모듈 시스템을 도입 했습니다.
1.16 버전부터 모듈 방식이 기본 옵션이 되었고,
1.17 버전부터 GOPATH 를 배제하고, 모듈만 지원할 계획이라고 합니다.

카카오 블로그의 해설이 올라온 날짜는 2018년 10월 23일

엘레베이터 시뮬레이션 서버 깃헙의 가장 최신 커밋의 날짜는 2019년 9월 17일

Go 1.11이 출시된 날짜는 2018년 8월 24일

2021년 10월 15일 기준 GO 최신버전은 1.17.2

그렇다면 아마, 그 당시에는 모듈이 아닌 패키지로 GO 서버를 실행했는데

지금은 무조건 모듈로 실행시켜야 해서 에러가 나는듯 싶다!


# Solution

일단 최신 버전의 GO 를 설치하자

https://golang.org/dl/

설치시 따로 바꾸어줄 곳은 없다 (default folder 바꾸지 않기!)

깃헙을 클론했다면 삭제해주고

$ rm -rf $GOPATH/src/2019-blind-2nd-elevator

다음 명령어를 순서대로 입력하자

$ git clone https://github.com/kakao-recruit/2019-blind-2nd-elevator.git $GOPATH/src/2019-blind-2nd-elevator
$ cd $GOPATH/src/2019-blind-2nd-elevator/elevator/cmd/elevator/
$ go mod init  <= elevator 모듈 생성!!!
$ go get ./
$ go build
$ ./elevator

  • go mod init 실행시 console 출력

  • go get ./ 입력시 console 출력


그렇다면

$GOPATH/src/2019-blind-2nd-elevator/elevator/cmd/elevator/

디렉토리 안에 elevator.exe 가 있을 것이다!!!

이를

./elevator

로 실행시켜주면 서버가 켜진다!

http://localhost:8000/viewer 로 접속하면

텅빈 빈화면이 나오는데
처음에는 시뮬레이션 돌린게 없어서 Token 값이 하나도 없기에
이렇게 나오는 것이 맞다


깃헙의 example 코드 한번 돌려보자

$ cd 2019-blind-2nd-elevator
$ cd example
$ python example.py
  • python example.py 실행시 console 출력

  • python example.py 실행시 서버쪽 console 출력

그후 http://localhost:8000/viewer 를 새로고침해주면

방금 실행한 example.py 의 Token 값인 bzLhV 가 있는 것을 볼 수 있다!!!
이 토큰을 클릭해주면

해당 시뮬레이션을 볼 수 있는 페이지가 나타나며
상단의 Timestamp 옆의 화살표를 클릭하면서
각 스텝별 엘레베이터의 움직임을 볼 수 있다!!!


지금까지 2019 카카오 블라인드 공채 2차 오프라인 - Elevator 의
서버 실행하는 방법이었습니다.

그럼, 카카오 준비하시는 분들 모두 화이팅입니다!

profile
이런 미친 게임을 봤나! - 옥냥이

0개의 댓글