2009-11-07 5 views
3

내가 org.eclipse.equinox.p2.examples.rcp.prestartupdate 프로젝트를 수행하고 내 RCP 응용 프로그램에서 사용할 수 있도록 적응 작동하지 않습니다. 그런 다음 야간 빌드의 일부로 업데이트 된 업데이트 저장소를 설정했습니다. 내 응용 프로그램을 열 때P2 헤드리스 업데이트는

는 그것이 업데이트처럼 움직임 통과 - 그것은, 업데이트 사이트를 찾아 설치 제거를 생성하고 올바르게 각 번들에 대한 피연산자를 설치하고이 오류없이 완료 말한다. 문제는 프로필이 업데이트 되더라도 플러그인이 실제로 플러그인 폴더에 설치되지 않는다는 것입니다 (후속 실행에는 업데이트가 없음). 다음 번에 빌드를 실행하면 업데이트가 있음을 정확하게 식별하지만 동일한 문제가 다시 발생합니다.

디버깅에 많은 시간이 걸렸으며 일반적인 상황을 완전히 보지 못했습니다. 마지막 구성 단계에서 TouchpointData 객체 중 아무 것도 지침이 없으므로 configure가해야 할 일을하고있는 것처럼 보입니다.

나는 정말로 다음에보아야 할 단서가없고, 다른 누군가에게 아이디어가 있는지 알고 싶습니다.

업데이트 : 마지막으로 무슨 일이 있었는지 알아 냈

.

메타 데이터 저장소를 생성하지 않고 제품을 만들 때 문제가 발생했습니다. 이클립스를 통해 구축 할 때 제품 내보내기 마법사에서 "메타 데이터 저장소 생성"을 선택하지 않았는데, 그 이유는 필자가 p2 저장소가 필요하지 않았기 때문입니다. 문제는 해당 버튼을 확인하지 않고도 다른 제품 중에서 프로필을 생성하지 않는 것과 같은 부작용을 유발하는 P2 활성화로 제품이 설치되지 않는다는 것입니다.

내가 수동으로 난 이후 발견 정말 나쁜 생각 한 코드의 프로파일을 작성하여이를 보상하기 위해 노력했다. 내 프로필이 제대로 설정되지 않아 원래의 문제가 발생했습니다.

나는 "메타 데이터 저장소를 생성"으로 제품을 수출하기 시작하면

업데이트가 제대로 새로운 플러그인을 설치하기 시작했다 확인.

지금이 문제는 플러그인이 올바르게 설치되고 있지만, 실행 파일은 휴지통지고 나는 더 이상 내 응용 프로그램을 실행할 수 없다는 것입니다. Eclipse 내보내기 제품 마법사를 사용할 때 존재하는 Hudson 및 바이너리 폴더를 통해 업데이트 사이트를 구축하고 있습니다. 나는 그것이 지금 잘못되고있는 것이라고 가정하고 있습니다.

내 헤드리스 PDE 빌드에서 바이너리가 빌드되지 않는 이유는 무엇입니까?

이것도 알아 냈어. 나는 필자가 필요로하는 것은 내가 구축하고 싶었던 플랫폼을위한 개별 런처 플러그인이라고 생각했다. 프로세스를 이해하려고 할 때마다 플러그인을 하나씩 빌드 서버에 복사하고있었습니다. 델타 팩의 org.eclipse.equinox.executable 기능을 필요로하는 빌드에 플랫폼 관련 바이너리를 포함시키는 것으로 나타났습니다. 빌드에 바이너리 파일을 추가하면 결과물에 바이너리 파일이 표시되기 시작합니다. 바이너리를 사용하면 업데이트 메커니즘이 의도 한대로 정확하게 작동합니다.

+0

Equinox 뉴스 그룹에 질문 할 수 있습니다. http://www.eclipse.org/forums/index.php?t=thread&frm_id=31&S=54cb8a352cdaac8400ec1094fdd67639 –

답변

2

내가 필요한 모든 난에 구축하기 원하는 플랫폼에 대한 개별 실행 플러그인이라고 가정했다. 프로세스를 이해하려고 할 때마다 플러그인을 하나씩 빌드 서버에 복사하고있었습니다. 델타 팩의 org.eclipse.equinox.executable 기능을 필요로하는 빌드에 플랫폼 관련 바이너리를 포함시키는 것으로 나타났습니다. 빌드에 바이너리 파일을 추가하면 결과물에 바이너리 파일이 표시되기 시작합니다. 바이너리를 사용하면 업데이트 메커니즘이 의도 한대로 정확하게 작동합니다.