본문 바로가기

개발노트/JAVA&JSP

[IntelliJ] 이클립스 프로젝트 인텔리J 로 가져올 때의 라이브러리 문제

이클립스로만 개발해오던 자바 개발을 어떻게든 인텔리J로 개발해보고 싶어서 각종 커뮤니티의 "이클립스 프로젝트와 인텔리J 모듈간의 협업에 문제는 없다"는 말을 철썩같이 믿고 인텔리J를 시작했다.


인텔리J 가 너무 써보고 싶었던 것이 가장 큰 이유.


우선 이클립스와 인텔리J에서 사용하는 기본 용어 차이 먼저...


Eclipse

IntelliJ IDEA

 Workspace

 Project 

 Project

 Module 

 



프로젝트란 단어가 공통으로 사용되는데 의미가 다르다보니 많이 헷갈릴 수 있다.


우선 협업을 사용하지 않는 상태에서 인텔리J에서 프로젝트를 만들고 그 안에 모듈을 만들고 테스트를 해보면 별 문제없이 잘 돌아간다.

라이브러리 파일도 그냥 필요한 jar 파일을 하나씩 하나씩 추가해나가면서 Spring MVC 구성도 문제없이 잘 된다.


문제는 버전컨트롤시스템을 사용하기 시작할 때인데, 사실 앤트, 메이븐, 그래들 등과 같은 빌드 툴을 사용하면 큰 문제없이 잘 될 것 같다는 생각이 든다. (아직 해보지는 않았으나 당연히 그렇게 예상됨)


회사에서는 이클립스 자체 빌드를 이용하여 개발을 진행하고 있고, 관련 라이브러리 묶음을 또 하나의 프로젝트(이클립스에서의)로서 userLibraries 형식을 사용하고 있기 때문에 그것을 그대로 인텔리J에서는 가져올 수가 없었던 점이 문제의 원인이었다.


최종적으로 SVN 으로 웹 (이클립스) 프로젝트와 라이브러리 (이클립스) 프로젝트를 체크아웃하고, 웹 (이클립스) 프로젝트만 모듈로 Import한 후 해당 모듈의 라이브러리에 (또는 Global Library에) 각종 jar 파일들이 들어있는 직속폴더들을 모두 명시하면 정상적으로 잘 되었다.


적으면서도 어떻게 해야하는지 감이 쉽게 안 올 거라 생각이 되기 때문에 스크린샷 첨부!







이걸 기준으로 앞으로 eclipse 프로젝트를 IntelliJ 로 협업을 하면 될 것 같다.


** 참고로 인텔리J 만의 설정파일들 *.iml , .idea 폴더 내의 파일들의 경우에는 unversioned 로서 VCS(버전 컨트롤 시스템, SVN, GIT 등) 로부터 형상관리받지 않아야 협업을 할 수 있음! ignore 로 설정해도 영향을 미칠 수 있음.(큰 문제는 없겠으나 혼자만 intelliJ를 사용하고 다른 사람들은 모두 이클립스를 사용한다면 ignore 하는 정보도 저장되기 때문에 불필요한 속성이 추가된 것으로 간주되고, 인텔리J를 잘 모르는 사람들은 저 파일에 대해 한참 헤멜 수 있음..?)



** 처음에 이클립스 프로젝트를 checkout 하고 인텔리J 모듈로 import with existing sources 할 때, .classpath 파일을 열겠느냐 물어보는데 No를 선택했었고(크게 다른 점은 없는 듯) *.iml 파일을 형상관리하겠냐고 물어보는데 No 를 선택하였음


** 위 스크린샷 중 첫번째, 두번째의 형태를 갖추면 됨.

반응형
  • Favicon of https://bacgyber.com BacGyber 2018.01.06 01:25 신고

    감사합니다. 글 잘보았습니다. 저도... 이클립스 협업환경에서 인텔리제이를 써보려고 고려중인데 큰 도움이 될 거 같습니다.
    음... 글 작성하신지 1년 가까이 되신거 같습니다. 특별한 이슈 없이 여전히 잘 쓰고 계신지 궁금한데 말씀해주실수 있을까요?

    • Favicon of https://lhb0517.tistory.com Mr.star 2018.01.09 09:55 신고

      네, 현재까지 전혀 문제가 없었습니다. 그리고 앤트, 메이븐, 그래들 등의 빌드 툴을 쓴다면 앞으로도 전혀 문제가 되지 않을 것으로 예상되고, 어설프게 이클립스에선 되는데 인텔리제이에서 안 되는 게 있거나, 그 반대의 경우가 있다면 “배포”와 관련된 해당 IDE의 특정 설정때문일 가능성이 아주 높을 것 같습니다. :D

  • 2018.01.09 23:55

    비밀댓글입니다

    • Favicon of https://lhb0517.tistory.com Mr.star 2018.01.21 21:53 신고

      이클립스보다는 확실히 생산성이 좋아지는 것 같습니다. 적응하는데 시간이 좀 걸리긴 하지만요. 혹시 ac.kr로 끝나는 활성중인 이메잏 계정이 있다면 인증받아서 무료로 Ultimate 버전을 사용하실 수도 있습니다. 또는 Community 버전(무료)으로도 기본적인 기능을 사용하실 수 있으니 참고 해주세요. ㅎㅎ