Flex 컴파일러의 헷갈리게 하는 에러 메세지 "An internal build error has occurred"
2008/04/30 15:51
[공지]이미지나 링크가 깨졌다면 댓글 부탁드립니다.
Flex Builder 3 Professional 버전에서 열심히 프로그래밍을 하는 중이였다.그런데 갑자기 만난 Error 메시지. 잉?!
An internal build error has occurred. Right-click for more information
이게 뭐지~
저러다가 이런 에러도 뜬다.
1131: 클래스는 중첩되면 안됩니다.
두 에러가 반복하면서 사람 돌게 만들더라.
Flex Builder를 종료했다가 다시 실행시켜보고, 윈도우 재부팅 해보고, Builder를 삭제했다가 다시 설치했다.
안된다....
그래서 추가한 SWC 때문인가 해서 뺐다가 다시 넣어보고.... Merge도 했다가 RSL로 돌렸다가... JDK도 지워도 보고.... 그냥 Library 소스를 복사해서 프로젝트에 넣어보기도 했다.
그래도 안된다.... 이런 수제비!!!!!
그래서 프로젝트를 지워 소스만 복사해서 다시 생성해보고 워크스페이스 이름이 잘못되었나 해서 이름도 고쳐보고~ .actionScriptProperties가 꼬였나 해서 그것도 유심히 살펴봤다....
그래도 안된다.... 이런 삼겹살!!!!!
그러다가......
완전 삐져서 소스를 보고 있는 중에 이런 부분을 봤다.
switch ( note.getName() )
{
}
저기에 그냥 case 문을 넣어보았다. 이렇게....
switch ( note.getName() )
{
case 1:
break;
}
감쪽같이 에러가 없어졌다.
이런 화장지!!!!!!
결국 Flex 컴파일러가 저 문법 에러를 제대로 잡지 못하고 이상한 에러메세지를 보여줬던 것이다.
내 생각에는 이것뿐만은 아닐 것이다... 어쨌든 비슷한 에러가 뜨면 함께 공유했으면 한다.
아~~~ 이것 때문에 3시간 헤맨 것을 생각하면 ㅡㅡ;;
그래도 찾아서 다행이다.
글쓴이 : 지돌스타(http://blog.jidolstar.com/322)
'Adobe Flash Platform' 카테고리의 다른 글
| 영어가 기본이 되어야 고급 개발자/과학자/기술자가 된다. 적어도 Flex 진영은 그렇다. (4) | 2008/05/04 |
|---|---|
| [Flex,AIR 팁] FileReference와 UploadCompleteData 이벤트 (8) | 2008/05/03 |
| Flex 컴파일러의 헷갈리게 하는 에러 메세지 "An internal build error has occurred" (18) | 2008/04/30 |
| [Flex] 말풍선 소스 공개 (56) | 2008/04/28 |
| Flash Player 의 가비지 컬렉션(GC) 동작 방식에 대해 (24) | 2008/04/22 |
| [Flex / AIR / ActionScript3] Event 청취자와 메모리 관리 (22) | 2008/04/22 |




switch(something) {
default:
break;
}
이런경우도 가끔 '1131: 클래스는 중첩되면 안됩니다.' 오류나더라구요 ;)
사람의 실수라곤 하지만...
컴파일러가 제대로 찾아주지 못해 애먹는건 정말... ^^;;
비밀댓글 입니다
ㅎㅎ 숨겨놯던 거군요.
선물 없을까요? ㅋㅋㅋ
좋은 정보 감사합니다~ switch구문에서 default레이블은 case와 다르게 강제하는 사항이 아니라 없어도 됩니다^^ 그리고 저도 몰랐던건데.. switch구문은 완전항등연산자로 비교한답니다 ㅎ; 항상 좋은정보~ 지돌스타님~ 짱~
순간 완전항등연산자 가 뭔가 했습니다. ㅎㅎㅎㅎ
=== 를 말씀하시는거군요.
헛 고생하셨네요 ^^;
ㅎㅎ 네~
와... 이거때문에 돌겠네요.
그래도 문제를 발견하셔서 다행
한가지 더 발견한 문제가 있는데요.
swc 파일에 계층이 있는 무비클립중 타임라인이 포함된 무비클립이 있으면
저 에러가 뜨는거 같네요....
그렇군요. 좋은 정보 감사합니다. ^^
이것 때문에 엄청 고생했는데 3.2로 업그레이드 하니 없어지는군요.. ^^
아~ 그렇군요. 3.2부터는 Flash Player 10을 지원하면서 내부적으로 이 문제를 없앴나봅니다. ^^
저도 저 오류 메시지를 봤는데 전혀 다른 곳에서 오류가 났다고 컴파일러가 알려 주더군요.
그래서 여기 저기 인터넷 찾다가 지돌스타님이 쓰신 글과 http://syncspace.blogspot.com/2008/04/as3mxmlc-bug.html 이 블로그에 있는 글을 검색해서 제 코드를 하나씩 주석처리해 가면서 테스트를 해 봤습니다.
결과는 삼항연산자의 결과값을 가공하면 안된다는 거였습니다.
예를 들어, var bVal:Boolean = val ? true : false; 이거는 되는데 우변을 가공하면 안됩니다. var bVal:Boolean = !(val ? true : false); 이거는 안됩니다.
참고로 제가 사용하는 flex sdk는 3.2.0, build 3958입니다.
좋은 정보 감사합니다.
다시 컴파일 하니 다시 나네요.
ㅈㅅ.. 더 연구 좀..해봐야겟네요.
여기 다른문제로 뜰때도 있네요... http://9mmedia.com/blog/?p=165
좋은 정보 감사합니다.