맥북 java 재설치부터 tomcat 설치까지

Yunit·2023년 4월 25일
0

서론

intelliJ 설치하고, tomcat설정하려는데 tomcat을 찾을 수가 없었다. 왜? tomcat을 설치한 적이 없으니까!
그래서 tomcat 설치하려했더니... 이번엔 java JDK 설치에 문제가 있네...? 내 맥북에 자바 설치부터가 엉망이었기 때문에 우선은 자바부터 해결하고 가자.

아래는 어제까지 그냥 이것저것 터미널창에 입력했던 것들 기록

Java 버전 중복 해결하기

자바가 정상적으로 설치되었다면, /Library/Java/JavaVirtualMachines 디렉토리에 JDK 관련 파일들이 있어야 한다. 아래처럼.

그런데 난 JavaVirtualMachines 폴더는 있어도 그 안에 아무런 파일도 없었다. 나 분명 이전에 Eclipse도 썼고... intelliJ 로 컴파일도 하긴 했었는데..? 뭐지..? 일단은 JDK부터 다운로드받았다.

(참고 : https://seoulbliss.tistory.com/538)

JDK 11버전을 .dmg 파일로 다운받고, 설치 진행. 그 뒤에 위처럼 zulu-11.jdk 폴더가 생성되었음을 확인할 수 있었다.
이제 터미널에서 java 버전을 확인해보자.

java -version

응..? 아무래도 기존 JDK랑 충돌인 듯... GPT에게 물어봤다.

나 아직도 JAVA_HOME 이 안 됐나? 확인해보자.

echo $JAVA_HOME

어... 아무것도 안 뜬다 ㅋㅋ 추가해야겠네

됐나? 이제 다시 java 버전 확인. 을 해보지만.. 똑같군...


이것저것 싸움해본 결과... 핵심만 뽑아봤다.

  • 실제 다른 디렉토리에 있는 JDK 폴더를 삭제할 것.
  • 재부팅 해보기.
  • echo $JAVA_HOME, echo $PATH 자주 확인해볼것
  • /usr/libexec/java_home -V 이거 입력했을 때,
    Matching Java Virtual Machines (1):
    11.0.19 (arm64) "Azul Systems, Inc." - "Zulu 11.64.19" /Library/Java/JavaVirtualMachines/zulu-11.jdk/Contents/Home
    /Library/Java/JavaVirtualMachines/zulu-11.jdk/Contents/Home
    이것처럼 경로 두 번 뜬다고 걱정하지 말 것. 정상임
  • 아무래도 zulu 11.64.19 버전은 openjdk 11.0.19 버전인 것 같다. openJDK와 zulu 버전 숫자가 다르다고 당황하지 말 것

tomcat 설치

참고 : https://eunoia3jy.tistory.com/31

  1. tomcat 홈페이지에서 파일 다운로드.
    파일은 그냥 압축파일일 뿐이고, 원하는 폴더에 압축파일 해제하면 된다.
  2. tomcat 서버 시작해보기
    tomcat 설치디렉토리/bin/ 에서 아래 명령어 입력하면 된다.
    ./startup.sh
    서버 종료할 때는 ./shutdown.sh
  3. 브라우저에서 localhost:8080 에 접속해보기

근데 오류났다...

이때 내가 해본 방법

  • http가 아니라 https:// 로 자동으로 redirecting 되는 것을 막기
    https://m.blog.naver.com/wizardry0629/221950407392
  • tomcat 디렉토리 변경(왠지 몰라도 /usr/local/lib/ 에 많이들 설치하는 것 같아서 나도 여기로 옮김)
  • 톰캣 서버 실행 후, 포트 번호 확인해보기
    sudo lsof -i -P | grep LISTEN
    혹은, sudo lsof -PiTCP -sTCP:LISTEN
    이 명령어로는 모든 포트번호들에 대해 LISTEN 상태인 포트들을 담당하고 있는 프로세스들을 검색하여 보여준다.
    sudo lsof -i :8080
    위 명령어는 8080포트를 사용하고 있는 프로세스만 집어서 보여준다.

이걸 보니, 밑에서 두 번째가 tomcat 서버인 것 같다.
왜 tomcat 서버 포트가 바뀌지? 아무래도 고정해야 할 것 같다.

음... 나 처음부터 8080으로 잘 되어 있네...? ㅋㅋ 아 모르겠다. 아무튼 localhost:8080 접속했을 때 잘 뜨면 됐지!

intelliJ 에 tomcat 적용하기

내가 지금 사용 중인 intelliJ는 무료인 intelliJ IDEA 2023.1 (Community Edition) 이다. 이 버전은 Tomcat을 자동으로 지원해주지 않아서 따로 서드파티 플러그인을 설치해줘야 한다.

참고 : https://velog.io/@youjung/Intellij-IDEA-Community-Edition%EC%97%90%EC%84%9C-Tomcat-%EC%82%AC%EC%9A%A9%ED%95%98%EA%B8%B0

본격 tomcat 적용과정 기록

설치 완료.

난 gradle버전은 아니고, 웹 프로젝트니까 그냥 ok 눌렀다.

tomcat 서버 실행

오류는 크게 두 가지가 났다.
한 가지는 스켈레톤 코드 오류. mapping 주소가 겹쳐서 생긴 오류.
다른 하나는 CommonsMultipartResolver 클래스 오류.
Fileupload 관련된 것들이 문제가 있었다. 지인에게 물어본 결과 dependency 설정이 부족해보인다고 조언을 들음.

일단은 잠깐 참고했던 사이트
https://m.blog.naver.com/javaking75/140203390797

Maven Repository에서 해당 dependency 코드를 가져왔다.

https://mvnrepository.com/artifact/commons-fileupload/commons-fileupload

이거 넣으니까 해결됨.
해결한 뒤, tomcat 서버 동작시키기.
맨 아래에 뜨는 주소 (ex. http://localhost:8080/프로젝트이름)
을 누르면, 500 Err가 뜬다. 이러면 tomcat이 제대로 적용된 것이라고 볼 수 있다.

profile
배우는 중

0개의 댓글