2014-07-11 2 views
1

내가 컴파일러가 일정 변경하려고 할 때마다 의해 지정된 컴파일러 설정 파일을 캐시에서 플래시 빌더를 중지, 내가 가진 것까지 :방법 -load-설정

  • 프로젝트를 수행 -> 청소.
  • 닫기 플래시 빌더. 완전히 가까이에
  • 기다립니다 (수행이 작업은 ... 일을 저장입니다)
  • 다시 시작 플래시 빌더 (그리고 ... 로딩이 완료 될 때까지 다시 기다려야)
  • 다시 빌드 모든 (은 3 개의 프로젝트가 서로 종속 됨).
  • 테스트 실행/디버그 it (또는 릴리스 버전 내보내기).

이것은 매우 귀찮고 시간 소모적입니다. Flash Builder가 항상 내가 작성한 사용자 정의 Compiler config.xml 파일의 최신 변경 사항을 읽을 수 있도록 설정할 수있는 설정이 있습니까?

그것은 기본적으로 같은 것을 포함 버전 번호가 긴 과정 될만큼 간단한 뭔가 enter image description here

변경.

해결 방법은 무엇입니까?

+0

원본 폴더를 마우스 오른쪽 단추로 클릭 했습니까?> 새로 고침을 시도 했습니까? – Karmacon

답변

1

저는 플래시 빌더 사용자가 아니므로 소금 한 덩어리로 복용하십시오. 몇 가지 가능한 해결 방법 : - 구글의 빠른 검색에서, 그것은 보인다

이 귀하의 문제는 플래시 빌더는 외부 파일에 변경 사항을 따기되지 않는 것 같다

프로젝트 자체에 상수를 정의 당신이하고있는 것 (또는 4.6으로 돌아가는 것) 이외의 특별한 해결책이없는 아주 흔한 문제 일 수 있습니다. 각각 별도의에 있어야

-define+=COMPILE::LANG_EN,true 
-define+=COMPILE::LANG_FR,false 
... 

을 :

는 액션 스크립트 컴파일러 및 에서 추가 컴파일러 인수는 다음처럼 상수를 추가> 프로젝트 설정으로 이동, 프로젝트 자체에 consts를 선언하려면 라인, 그리고 수도CONFIG (기본값)

프로젝트를 빌드와 COMPILE를 교체해야 ANT 사용

설정하는 데 약간의 어려움이있을 수 있지만 일단 완료되면 문제가되지 않습니다.당신과 같이 선언 할 수 있어야한다 :

<mxmlc ... > 
    <define name="CONFIG::LANG_EN" value="true"/> 
    <define name="CONFIG::LANG_FR" value="false"/> 
</mxmlc> 

코드에 상수를 정의 http://help.adobe.com/en_US/flex/using/WS2db454920e96a9e51e63e3d11c0bf69084-7abd.html

에서 촬영

그것은 단지 작동하지만, 직접 코드에서 상수를 컴파일 정의하는 것이 가능 선언 된 코드 블록 (예 : 클래스 수준). 필요에 따라 (즉, 다른 값을 설정하고 실제로 코드를 제거하는 경우) 필요한 작업을 수행 할 수 있습니다 (예 : 상수 클래스에 설정, 컴파일에 따라 다른 상수의 값 설정 CONST는. 그런 다음

에 FlashDevelop이 친구가 여기에있을 수

package 
{ 
    config namespace COMPILE; 
    COMPILE const LANG_EN = true; 
    COMPILE const LANG_FR = !COMPILE::LANG_EN; 

    public class MyClass 
    { 
     public function MyClass() 
     { 
      this.sayHello(); 
     } 

     COMPILE::LANG_EN 
     public function sayHello():void 
     { 
      trace("hello"); 
     } 

     COMPILE::LANG_FR 
     public function sayHello():void 
     { 
      trace("bonjour"); 
     } 

     public function foo():void 
     { 
      COMPILE::LANG_EN { trace("foo"); } 
      COMPILE::LANG_FR { trace("bar"); } 
     } 

    } 
} 

변경 IDE) 코드 전반에 걸쳐 그 상수를 사용합니다. 사무실에서 나는 FlashDevelop에서 일하고, 다른 개발자들은 FlashBuilder를 사용하여 작업합니다. 각자 자신의 장점이 있습니다.

코드 블록을 제거해야하는 상황 (즉, 모바일 및 웹 빌드 지원)에 대해 첫 번째 방법으로 정의 된 컴파일러 상수를 사용하고 빌드에 따라 다른 "상수"에 포함 된 XML을 사용합니다. 버전, 서버 ip, api 키 등. 어떤 XML이 후자의 경우에 포함되는지는 단일 컴파일러 const에 따라 다릅니다.

+0

자세한 답변을 보내 주셔서 감사합니다. 불행히도 FlashDevelop를 사용하는 것이 좋겠지 만 불행히도 프로젝트를 구성하는 방법과 마찬가지로 일반적으로 모든 단일 게임 "프로젝트"(제목 프로젝트 1 개, InGame 1 개, 이전 로딩 2 개 포함)에 대해 3 개의 플래시 프로젝트를 만듭니다. , 그리고 "Flash Builder"는 이러한 종류의 설정을 처리하는 더 나은 IDE 인 것처럼 보입니다 (비록이 코드 구성에 크게 동의하지 않지만 동료들과 토론을 할 수는 없습니다). – bigp

+0

코드 ** 예제의 ** 상수가 실제로 '거짓'결과가있는 블록의 바이트 코드를 생략하거나 포함하지만 어쨌든 실행되지 않는지 궁금합니다. * JPEXS Free Flash Decompiler * 또는 이와 유사한 것으로 신속하게 분석 할 가치가 있습니다. – bigp

+0

그래, 처음에는 프로젝트를 설정하여 FlashDevelop 및 Flash Builder에서 사용할 수 있지만 약간의 어려움이 있지만 지금까지는 문제가 없습니다. 코드의 상수에 관해서는, 내가 말할 수있는 것에서는 블록이 제거됩니다 (그렇지 않으면'sayHello()'와 같은 이름의 함수에 대해 컴파일 오류가 발생합니다). 그건, 내가 그것을 확인하지 못했다;) – divillysausages