이클립스, STS에 학을 땟다. 분명히 동작할 코드가 안되고 한참 삽질하다가 IDE를 껏다키니 코드가 작동하고 ㅡ,ㅡ;;
Maven 빌드 속도도 느리고.. 이건 Gradle을 쓰면 뭐 얼추 개선되지만.. 여하튼간 Git도 쓰기가 너무 불편하고.. 더이상 이클립스에 지쳐버렸다. 설정 노하우던 뭐던.. 시간으로 보나 효율로 보나 너무 떨어져서 이제는 인텔리J 혹은 vscode로 넘어갈 생각을 하고 있다.
작년 연말쯤에 vscode에서도 Spring-boot을 공식 지원하기 시작했고.. Java도 Preview로 이미 지원을 하고 있다.
단지 Spring-boot과 gradle에 익숙하지 않아서 못넘어가고 있을뿐. 여하튼 vscode는 좋은 툴이다. 내 역량과 준비만 되면 무조건 넘어갈 생각
이클립스의 프로젝트를 인텔리J로 마이그레이션 하는 과정에서 겪은 삽질을 조금 정리해보려고 한다. 금방될줄 알았는데 1시간이나 걸렸다. 예전에는 쉽게 했었는데 버전이 올라가고 더 어려워진 느낌 ㅡ,ㅡ;;
무료 버전
유료 버전(Ultimate)
유료 버전이다. 앞에 적은 것처럼 edu, ac.kr 메일을 가지고 있다면 시리얼을 받을 수 있다. 일단은 1년을 받는건 확실하고.. 듣기론 1년씩 계속 갱신이 된다고는 하는데.. 모르겠음.. 아무튼 간..
이 또한 여러 분들이 블로그에 방법을 올려주셨었다. 일단 쉽게 될줄 알고. import를 하고 이래저래 해봐도 deploy 설정이 제대로 안되서 빌드만 제대로 되고 deploy는 안되는 요상한 상황이 벌어졌다 ㅡ,ㅡ; 대략적인 과정은
- 설치할 때 필요한 플러그인만 골라서 설치
- 분명히 tomcat을 설치 했는데도 설치가 안된건지 누락됨
- 그럴때는 setting (Ctrl + Alt + S)를 누르고 Plugins 에서 필요한 플러그인을 체크해주면 재시작이 되고 설치가 완료
- Gradle, Maven, Eclipse 프로젝트는 File - Module From Existing Sources를 누르고
- bulid.gradle, pom.xml, .project 파일을 찾아주면 인텔리J가 모든 것을(!!) 알아서 마이그레이션 해줌
- 인텔리J가 알아서 인식을 못하거나 파일을 통으로 그냥 가져온다면 3번째 항목에서 설치 상태 확인
- 빌드와 실행은 오른쪽 상단 작업표시줄에 있고 Edit Configuration 에서 세팅
- 서버(대부분 tomcat)의 세팅이 여기서 이루어짐
- 내 경우 여기까지 어찌어찌 되었고.. Artifacts 에러와 Architecture 에러가 났다.
- 첫번째 Artifacts는 Deploy 관련 에러인데. tomcat을 세팅헀던 config에서 Artifacts을 생성해서 만들어 줘야함
- http://altkeycode.tistory.com/17 이곳의 1) Maven 으로 Artifactes 설정 항목을 참조 (사실 기억이 잘안나는데 대략 비슷한거같음)
- 두번째 Architecture는 말그대로 아키텍쳐 에러인데. 보통은 SDK가 32bit 버전이라서 나는 듯함.
- 내 경우 tomcat이 32bit여서 빌생했는데.
- apache tomcat 사이트에서 다운로드 페이지에서 맨위의 core버전을 받지말고.. 하단의 core 64bit버전을 받아서 교체해주니 해결
Architecture의 에러문구.. 라이젠이라 나는 에러같지만 tomcat이나 sdk버전이 32bit여서 나는 에러일 것이다.
Can't load IA 32-bit .dll on a AMD 64-bit platform
이걸 제대로 지정안하니 War빌드는 제대로 되고 로컬환경에서 deploy가 제대로 안되서 실행이 안되더라.
이때는 세팅밑에 Project Structure에서 Artifacts를 손봐줘야 한다. 아마 아무것도 없을텐데.. Web Application exploded 를 추가시키고
WEB-INF의 web.xml을 선택해주면 인식이 되기 시작한다. Available Elements에 나타는 친구들을 좌측 최하위쪽으로 옮겨주면 아마 잘 될 것이다. 서버 설정에서 tomcat에 Deployment에 방금 만든 Artifacts가 잘 있는지 확인하면 된다.
그외에 이클립스는 프로젝트 명이 URI로 붙는데 인텔리J는 기본상태가 '/' 에서 시작한다.
이거는 서버설정에서 Deployment에 Application Context가 '/' 로 되어있는데 이걸 '/프로젝트 명'으로 수정해주면 된다. 딱히 URI가 프로젝트 명이 아니어도 된다면 고칠 필요는 없다.
말로 적어서 약간 장황한데 참고 출처에 더 친절하게 정리되있으니 참고바람! 이제 더이상은 이클립스에 고통받지 않기를..
+
내용 정리가 되면 Maven도 걷어내고 Gradle로.. Spring Framework 3 역시 Spring boot 로 Mybatis도 JPA , Hibernate로 넘어갈 예정
여러 교육기관, SI에서 지긋지긋한 Spring 3, Maven좀 그만 쓰길 바라며
참고 출처
http://meaownworld.tistory.com/13
http://kamang-it.tistory.com/243
https://stackoverflow.com/questions/43244946/com-intellij-javaee-oss-admin-jmx-jmxadminexception-com-intellij-execution-exec
http://uwangg.tistory.com/46
http://multifrontgarden.tistory.com/108