2016-09-12 6 views
0

SuperDevMode를 여러 모듈과 함께 GWT-2.6.1에서 작동 시키려고합니다.중첩 된 스크립트로 SuperDevMode가 작동하지 않습니다.

나는 SuperDevMode 플러그인이 DOM의 다른 레벨에있는 모듈을 선택하지 않는 문제를 발견했습니다. 북마크는 그렇게 할 때, 그 페이지 내에 존재하는 모듈을 포함

__gwt_activeModules 

변수 :

var o=window; 

이 윈도우가 포함 생성 .nocache.js 파일의 예는 다음 라인을 가지고 활성화되어 해당 모듈을 찾아 codeserver에서 실행중인 .nocache.js 파일로 바꿉니다. (믿습니다!)

DOM의 다른 레벨에있는 모듈을 다시 컴파일하려고하면 문제가 발생합니다. nocache.js 윈도우가 nce는 다릅니다. SuperDevMode 플러그인은 최상위 모듈 만 볼 수 있습니다. 이 플러그인의 한계입니까, 아니면 잘못 설정 한 적이 있습니까?

감사합니다.

+0

SDM을 실행하기 위해 GWT 2.7로 옮길 것을 제안합니다. 2.6.1은 훨씬 더 버그가 있습니다. GWT 2.7에서 SDM이 더 빠르고 더 잘 실행됩니다. 문서의 일부 iframe에서 앱 (모듈)을 실행하고있는 것 같습니다. 그럴 경우 감지 할 수 없습니다 (북마크 릿을 사용하면 2.7에서 작동합니다). 2.7을 사용한다면 -war/path/to/war/ouput/dir을 사용하는 것이 좋습니다. 예를 들어 외부 웹 서버 (https://www.youtube.com/watch?v=HfucNtGXLYY)를 사용합니다. 그래도 도움이되지 않는다면 웹 서버를 어떻게 설정해야합니까? 외부 서버 또는 내장 된 서버를 사용하고 있습니까? – Branflake2267

+0

안녕하세요, 제 JBOSS에 내 .WAR 파일을 호스팅하고 Eclipse Jetty 인스턴스를 사용하여 코드 서버를 시작합니다! – AkinW

답변

0

SDM 코드 서버가 웹 서버와 동일한 IP에서 실행되는 경우 코드 모드에서 실행될 때 DevMode를 -war/path/to/war/output/dir/on/jboss와 함께 사용하는 것이 좋습니다. sdm init을 사용하여 [module] .nocache.js 파일을 war 출력 디렉토리에 씁니다. 즉,로드 할 때 컴파일되고 새로 고침됩니다.

외부 서버로 구성하는 것이 더 쉽기 때문에 코드 서버 시작 프로그램을 사용하는 것을 선호합니다. GWT Eclipse Plugin에는 코드 서버에 대한 시작 프로그램이 있으며 -war 대신 -launcherDir을 호출합니다.

웹 서버가 다른 IP에 있으면 코드 서버로 다시 프록시를 사용해야합니다. 그러면 9867 요청이 로컬 코드 서버로 되돌아갑니다. 또는 [module] .nocache.js에서 hostName을 해킹하고 변경하십시오. 나는 이것을 위해 해킹 작업을하고 있으며 GWTCon에서 실행하는 방법을 보여줄 것이다. 코드 서버와 웹 서버가 모두 동일한 IP에 바인드되어 있기 때문에 서버 런타임을 Eclipse에서 실행하는 경우에는이 작업이 필요하지 않습니다.

다음은 동일한 IP에 간단한 외부 웹 서버가있는 비디오입니다. 동일한 효과를 동일한 IP에있는 모든 웹 서버에서 가질 수 있습니다. https://www.youtube.com/watch?v=HfucNtGXLYY

+0

내 모듈 중 하나에서 제대로 작동하지만 두 번째 모듈에 RPC 오류가 발생했습니다. = ( – AkinW

+0

두 개 이상의 project.nocache.js가 문서에 포함되어 있습니까? – Branflake2267

+0

저는 거기에 가정합니다 이 경우에는 한 번에 하나씩 SDM 만 사용하고 나머지는 컴파일하고 웹 모드로 실행하십시오. – Branflake2267