Error Loading Project: Cannot load module module_name_prev


원인 :

- 인텔리제이를 사용하지 않는 이전 버전의 프로젝트를 확인한 후 다시 원래 버전의 프로젝트를 확인하려고 할 때

- 기존의 모듈(.iml) 경로가 변경되었을 때


해결법 : 

- .idea/modules.xml 파일에서 경로 수정

관련 링크 : https://zeroturnaround.com/software/jrebel/quickstart/intellij/enable-automatic-compilation-in-intellij-idea/


1. 인텔리제이 환경설정 - 컴파일러 옵션에서

"Make project automatically" (혹은 "Build project automatically")

기능을 켜고,


2. Ctrl + Shift + A (mac 에서는 Cmd + Shift + A) 누르고 검색창에서 Registry 를 검색해서 연다.


3. "compiler.automake.allow.when.app.running" 기능을 켠다.



* 컴파일러 옵션을 켜도 레지스트리 옵션을 키지 않으면 적용되지 않는다.

* 단순 코드 테스트를 위한 application 프로젝트 수행 시 적용하는 부분으로, 웹 프로젝트의 디플로이 및 업데이트와는 다른 부분이다.


프로그램을 영문으로 입력했을때 대안 프로그램을 찾아주는 사이트


http://alternativeto.net


단, 외국 사이트라서 국내 프로그램은 거의 없음


참조 : http://sharingtime.kr/773


프로그램을 만들다보면 예외처리를 해야되는데,

테스트 하다보면 출력창에는 "예외가 발생했습니다"라고 뜨면서

실제로 그 예외가 발생한 곳이 어딘지 알 수 없는 경우가 있다.


별도로 설정해주지 않으면 예외 상황에서 중단점이 걸리지 않기 때문인데

(실제로 배포할때는 비정상 종료되는 부분이다;;)

이걸 설정하기 위해서는


Visual Studio 에서 Ctrl + Alt + E 를 눌러서 확인할 항목들을 체크하고 확인을 누르면

해당 예외가 발생할때 중단점이 걸려서, 예외가 발생하는 부분이나 호출 스택을 확인할 수 있다.


전에는 설정 해두고 써서

노트북에서도 당연히 되야 하는데...

라고 생각하면서 왜 안되는지 몰라서 헤멤...

다시 찾느라고 한참...


그래서 또 까먹을까봐 포스팅~


찾기 및 바꾸기에 사용하는 정규식에서.


ex.

\)\]\.Text = {[^"]*[:Ha][^"]*} ? \"√\" \: \"\";

정규식에서 사용하는 문자는 이스케이프 문자(\)를 붙여서 표현.

[^"]*[:Ha][^"]*

- 한글을 포함한 모든 문자 ; {}로 감싸서 태그로 사용

"Incremental Linker의 작동이 중지되었습니다."


라는 안내창이 뜨면서 꽤 높은 확률로 링크 에러가 발생할 때,

구글링 하면 대부분 SP1을 설치하라고 권고한다.


하지만.... Direct SDK 를 사용해서 그런지 어쩐지는 잘 모르겠지만,

vs2008 과 vs2008 sp1은 어느 부분(어딘지 모르겠지만)에서 호환이 안된다.

즉, sp1에서 작성한 솔루션을 그냥 vs2008에서 컴파일 했을 때 에러가 발생했었던 걸로 기억.


덕분에 sp1 에서 다운그레이드 하느라고 vs2008을 삭제하고 재설치하기까지 했다 ㅜㅜ

(주변 개발 환경이 vs2008이기 때문에 데스크탑을 맞출 수 밖에 없었다는...)


쨌든, 그러한 이유로 sp1 설치는 해결책이 되지 않아 이리저리 검색한 결과,

핫픽스를 설치하라는 글을 발견하고 기쁜 마음에 다운받아 설치하려고 했으나.


실행 직후 안내문에


"이 소프트웨어 업데이트가 적용되는 제품이 이 컴퓨터에 설치되어 있지 않습니다. 설치를 끝내려면 취소를 클릭하십시오."


ㅇㄱㄴ

또다시 좌절..


꽤 오랜 시간 검색한 결과 드디어..!!!

해결책을 찾았다!


에러가 나던 프로젝트 하나만 설정해주면 되는데,

해당 프로젝트의 속성(Alt+F7) - 구성 속성 - 링커 - 일반 - 증분 링크 사용

이 부분을 "예(/INCREMENTAL)" 에서

기본값 or "아니오(/INCREMENTAL:NO)"로 설정해주면 된다.


내 경우엔 "기본값"으로 설정했는데 이상없이 아주 잘된다!


오예 ~ㅁ~



+ Recent posts