2012-11-02 2 views
3

저는 tycho-p2-director-plugin을 사용하여 응용 프로그램을 빌드하는 Eclipse RCP 개발자입니다.tycho를 사용하여 제품을 materalize하면 .eclipseproduct 파일이 누락됩니다.

좋은 소식은 어셈블리가 생성되어 성공적으로 실행될 수 있다는 것입니다. 나쁜 소식은 내가 생성 할 것으로 예상되는 인공물 중 하나 (.eclipseproduct 파일)가 생성되지 않는다는 것입니다.

이 파일의 처리 방법은 Tycho를 통해 생성되지 않을뿐만 아니라 Eclipse 제품 내보내기 마법사를 사용할 때도 생성되지 않습니다. Based upon the documentation I found here, 그럴 것이라고 기대합니다.

이 시점에서 .eclipseproduct 파일이 어디에서 왔는지에 대한 좋은 문서를 찾을 수 없기 때문에 근본적으로 두 가지 점에 대해 궁금합니다. 생성되는 지점이 무엇인지 생각해보십시오.

tycho 메이븐 라이프 사이클 동안 생성되면 내 대상 폴더 아래에서 파일을 찾을 것으로 예상됩니다. 그렇지 않습니다. 나는 타이코가 config.ini 외에 설정 파일을 정적으로 포함시키는 방법을 찾지 못했다. 그렇지 않으면 그 메소드를 사용하여 정적 인 .eclipseproduct 파일을 나의 설치 디렉토리의 루트에 붙이게된다.

설치 프로그램에서 생성해야하는 경우 p2를 사용하여이 작업을 수행 할 수있는 메커니즘은 무엇입니까? 필자는 P2 IU의 .eclipseproduct 파일을 포함 시키려고했지만 파일이 실제로 루트 디렉토리에 복사 될 것인지 그리고 그 파일이 어떻게 완성 될 것인지 명확하지 않습니다.

내가 알 수 있듯이이 파일을 내 빌드에 포함시키는 것이 어떻게 이루어 지는지에 관해서는 많은 지시를 찾을 수 없었습니다. 올바른 방향의 포인터라면 도움이 될 것입니다. 필요한 경우 제품 구성 파일을 포함 할 수도 있습니다.

+0

인지 파악하지 않은 에 대한? 링크 된 문서에는 해당 파일이 언급되어 있지 않습니다. – oberlies

+0

그것은 .exe의 레이아웃에서 언급합니다. .eclipseproduct 파일을 사용하여 주로 응용 프로그램의 버전을 확인합니다.이 파일은 config.ini 파일로 쉽게 재배치 될 수 있습니다. 그게 내가해야 할 일인 지 궁금 해서요.하지만 과거에는 (그리고 이클립스 4.2로도 패키지를 꾸몄습니다). 우리가 .eclipseproduct (아마 deprecated artifact입니까?)를 버리거나 우리 제품으로 생성하는 방법을 찾아야하는지 궁금합니다. – jonnywri

답변

2

이것은 부분적인 대답 일 뿐이므로 주석이어야합니다. 너무 깁니다. ,

나는 내가 Installing a Complete product section of this page 사용 지침은 이클립스 (P2 디렉터를 사용하여 4.2의 사본을 프로비저닝이를 찾으려면 :

.eclipseproduct은 빌드시에 생성 된 파일이며, 프로비저닝 시간 (P2)에 의해 생성되지 것 같다 저장소를 업데이트하여 4.2 site 대신 3.6 컴퓨터를 사용하고 Windows 경로를 사용하지 않고 내 Mac에 더 적합한 것으로 변경했습니다.

$ ls -lA 
total 304 
-rw-r--r-- 1 myself group  60 Sep 14 18:13 .eclipseproduct 
drwxr-xr-x 3 myself group  102 Nov 2 14:49 Eclipse.app 
-rw-r--r-- 1 myself group 112366 Nov 2 14:49 artifacts.xml 
... 

이있어 나를 ./p2의 다양한 캐시를 통해보고 :

은 내가 .eclipseproduct 파일 타임 스탬프는 다른 때부터 압축 해제 된 유물 대신 생성 된 하나가 될 듯 파일 목록에 발견 디렉토리, 나는 내가 P2 I을 발견

:p2 $ zipinfo org.eclipse.equinox.p2.core/cache/binary/org.eclipse.platform_root_* 
Archive: org.eclipse.equinox.p2.core/cache/binary/org.eclipse.platform_root_4.2.1.v20120814-120134-9JF7BHVGFyMveli1uX6aTH0q-eAap6PAgOP5mO 38125 5 
-rw----  2.0 fat  0 bl defN 14-Sep-12 18:13 readme/ 
-rw----  2.0 fat 104173 bl defN 14-Sep-12 18:13 readme/readme_eclipse.html 
-rw----  2.0 fat  9051 bl defN 14-Sep-12 18:13 notice.html 
-rw----  2.0 fat  60 bl defN 14-Sep-12 18:13 .eclipseproduct 
-rw----  2.0 fat 16536 bl defN 14-Sep-12 18:13 epl-v10.html 
5 files, 129820 bytes uncompressed, 37501 bytes compressed: 71.1% 

라이선스와 .eclipseproduct 파일이 포함 된 압축 파일 인 설치 가능 단위 org.eclipse.platform_root ...이 있다는 것을 발견 org.eclipse.equinox.p2.repository/cache/content*.jar 파일에서 발견하고 content.xml 파일 U 정보 : 한마디로

... 
<unit id='org.eclipse.platform_root' version='4.2.1.v20120814-120134-9JF7BHVGFyMveli1uX6aTH0q-eAap6PAgOP5mO'> 
    <provides size='1'> 
    <provided namespace='org.eclipse.equinox.p2.iu' name='org.eclipse.platform_root' version='4.2.1.v20120814-120134-9JF7BHVGFyMveli1uX6aTH0q-eAap6PAgOP5mO'/> 
    </provides> 
    <artifacts size='1'> 
    <artifact classifier='binary' id='org.eclipse.platform_root' version='4.2.1.v20120814-120134-9JF7BHVGFyMveli1uX6aTH0q-eAap6PAgOP5mO'/> 
    </artifacts> 
    <touchpoint id='org.eclipse.equinox.p2.native' version='1.0.0'/> 
    <touchpointData size='1'> 
    <instructions size='2'> 
     <instruction key='install'> 
     unzip(source:@artifact, target:${installFolder}); 
     </instruction> 
     <instruction key='uninstall'> 
     cleanupzip(source:@artifact, target:${installFolder}); 
     </instruction> 
    </instructions> 
    </touchpointData> 
</unit> 
... 

은 (org.eclipse.platform.feature.group에서 요구하는)이 IU가 설치되어있는 경우, P2는 단순히 설치 폴더에 .eclipseproduct와 이슈 압축을 풀고. 변환은 필요하지 않습니다. 따라서 설치 전에 생성해야합니다.

편집 : 나는 또한 Eclipse Git Repositories에 그것을 발견하지만이 이상 여부를 언급 IU로 설정되어 사람 ... 당신은`.eclipseproduct` 파일이 필요합니까 무엇

+0

이것은 대부분 효과가있는 것처럼 보입니다. 제품마다 루트 IU가 있으면 .eclipseproduct 파일이 삭제 될 수 있습니다. – jonnywri