2016-11-25 4 views
1

나는 지난 주에 두 번째로 문제가 발생했습니다. 무작위로 발생하는 것 같습니다. QML 파일에서 무언가를 변경하고 저장 한 다음 앱을 실행하고 변경 사항이 적용되지 않았 음을 확인합니다. 앱을 다시 실행해도 여전히 적용되지 않습니다. 나는 어떤 자식 물건을 한 후언제 QML 파일의 변경 사항이 적용되지 않습니까?

이 나에게 무슨 일이 있었 처음으로, 그것은 그 자체로 고정되었다 (순서 : git stash save를, 이전 버전으로 롤백 최신 버전, git stash pop으로 돌아갑니다). 두 번째로 그렇게하지는 않았지만 Qt Creator 메뉴에서 qmake를 실행하고 수정했습니다.

무엇이 문제의 원인 일 수 있습니까?

Qt Creator 4.1.0을 사용하고 있습니다.

+0

Qt는 내가 사용해 온 한 그 문제를 가지고 있습니다. QML 이전에는 거의 7 년이 걸렸습니다. 때때로 변경 사항을 반영하기 위해 모두 정리하고 다시 작성해야했습니다. 얼마나 고칠 지 궁금합니다 ... – dtech

+0

리소스에서 QML 파일을로드하고 있습니까? 그렇다면 재건축하셨습니까? 일반적으로 응용 프로그램이 실행되는 동안 다시로드 할 수 있으므로 개발 중에는 직접 파일 액세스 만 사용합니다. –

+0

@KevinKrammer : 리소스에서로드 중입니다. "실행"명령은 일반적으로 변경 사항이있을 때 자동으로 프로젝트를 다시 작성하므로 Creator가 대신 자동으로 다시 작성하지는 않습니다. –

답변

2

스테판은 내가 이런 일을 본 것과 내가 전에 읽은 것은 알고 버그입니다에서 더 많은 정보는에서 찾을 수 있습니다

https://bugreports.qt.io/browse/QTCREATORBUG-1627

것은 qtcreator가 감지 할 수없는 것이다 qlm/qrc 파일의 변경이 변경되어 qmake가 실행되지 않아 makefile이 갱신되지 않습니다.

그들은 이미 버그가 해결되지 않을 것 같습니다. qtcreator의 해결 방법은 수동으로 qmake를 실행하고 재 구축 한 후입니다.

+0

qml 파일 변경의 경우 qmake 만 실행하면됩니다. 나는 모든 종류의 C++ 코드를 한 번에 정리하고 다시 빌드해야하는 동일한 유형의 버그라고 생각합니다. – dtech

+0

나는 UI 개발에 예측할 수없는 문제가있는 것처럼이 사실에 대해 매우 동의합니다. 그래서 나는 사건의 목록을 컴파일하려고 노력할 것이고, 다시 공유 할 것이다. :) 그래서 수동으로 우리는 모든 경우를 알 수있다. qmake는 실행될 필요가있다. :) – Kanekotic

+0

qmake는 보통 필요하지 않다. 프로젝트 설정의 내용이 변경되지 않는 한 실행됩니다. 빌드 시스템에 따라 (예 : make를 사용하면 생성 된 파일에 필요한 모든 업데이트 규칙이 있어야하며 빌드 도구가 변경 사항과 실행에 필요한 빌드 체인을 감지해야합니다. 따라서 이것은 도구에 어떤 도구가 사용되고 있는지, 그리고 어떻게 변경을 감지하는지에 달려 있습니다. –

1

모든 문제가 발생하기 전에 qmake를 부지런히 실행 했음에도 불구하고이 문제가 다시 발생했습니다.

나는 이번에 그 원인이 무엇인지 알아 냈다고 생각합니다. 그것은 "응용 프로그램 출력"창의 도구 모음에있는 작은 실행 단추 (실제로이 실행 구성을 다시 실행 함)를 사용하고 있다는 것입니다. 이 단추가을 재건하지 않고 을 실행하는 위험한 속성을 가지고있는 것 같습니다.

해결 방법은 Ctrl + R을 사용하거나, 또는 창 왼쪽의 세로 도구 모음에서 큰 실행 단추를 사용하는 것입니다.


myproject.pro.user 파일을 삭제해야 문제가 해결됩니다.

관련 문제