[eclipse] RCP 제품화 하기

참고자료

product definition & configuration

독립적으로 수행되는 RCP application을 만들려면 제품화가 필요하다.

  • New Product Configuration Wizard 수행
    • PDE Perspective에서 File >> New >> Product Configuration으로 product 파일을 생성한다.
    • product 파일은 어플리케이션을 제품화시키는데 필요한 정보를 저장한다.
    • product 파일의 일부 정보는 플러그인 내역서에 저장된다. (extension point = "org.eclipse.core.runtime.products")
    • product 역시 확장점을 확장에서 이클립스에 product 정보를 제공하기 때문이다.
    • 일부정보는 config.ini나 launcher(여기서는 wapple.exe).ini 파일에 저장된다.
    • 따라서 product 파일이 수정되면 동기화를 해주어야 변경된 정보가 관련 파일에 반영된다.
    • Product Name 항목은 어플리케이션의 main window title로 사용된다. NLS 적용을 위해 plugin.properties에 정의한다.
    • Editor의 각 필드에 대해서는 도움말을 참조하도록 한다.
      • Plug-in Development Environment Guide > Tools > New File Creation Wizards > Product Configuration Editor
  • New Product Definition
    • defining plugin: 확장 정보를 어느 플러그인 내역서에 저장할지를 지정함
    • application: launcher가 실행할 entry point(main 함수)를 지정한다.
    • wapple은 processs diagram editor, processor diagram editor 플러그인 모두 entry point를 가지지만 process diagram이 main application이다.
  • launcher 설정
    • 파일시스템에 위치할 어플리케이션의 실행파일 이름과 아이콘을 지정한다. (wapple.exe)
  • product branding
    • 어플리케이션의 윈도우 아이콘을 지정한다.
    • about dialog에 사용할 이미지와 text를 입력한다.
    • about dialog를 보려면 help >> about 메뉴를 정의해야한다.
  • Splash 화면 지정
    • splash.bmp파일이 있는 플러그인을 지정한다.

단순 배포버전 만들기

  • Product export wizard를 사용하여 배포본 만들기
    • File > Export > Plug-in development > Product export를 선택하거나
    • product 파일을 열고 product export wizard 링크를 선택해 wizard를 실행한다.

feature 배포버전 만들기

  • 배포된 어플리케이션이 update site를 통해 최신버전을 내려받을 수 있도록 하려면 feature를 먼저 정의해야 한다.
  • eclipse update manager는 feature 단위로 버전을 확인하기 때문이다.
  • New Project >> New Feature Project
    • 배포할 플러그인들을 feature로 묶는다.
    • feature 설정에 대한 자세한 설명은 도움말 Feature Manifest Editor를 참조하도록 한다.
  • export wizard를 통해 feature만 따로 배포가능한 파일로 만들 수 있다.
  • feature와 product의 관계는?
    • feature는 플러그인을 묶어준다.
    • 그러므로 product는 플러그인의 조합으로 정의할수도 있지만 feature의 조합으로 정의할수도 있다.
    • 앞에서 얘기했듯이 update manager를 사용하려면 feature로 product를 정의해야 한다.
    • 여기서 어려움이 하나 있는데, application이 사용하는 모든 플러그인을 feature를 통해 제공해야한다는 것이다.
    • 어떻게 해야 할까?
  • rcp feature에서 제공하는 플러그인 이상을 사용하는 어플리케이션을 feature로 배포하려면?
    • 먼저 rcp application은 rcp feature만을 사용해서 만드는것이 원칙이다.
    • 이 경우는 feature editor >> Included Features page에서 org.eclipse.rcp를 추가해주는것으로 끝난다.
    • rcp에서 제공하지 않는 플러그인을 사용한다면
      • 사용하려는 플러그인이 feature로 묶여있는지 확인한다.
      • feature로 구성되어 있다면 rcp feature와 마찬가지로 Included Features page에서 해당 feature를 추가한다.
      • application이 의존하는 플러그인들이 version up 되었을 때 feature를 통해 update하기 위해서이다.
      • 당연한 말이겠지만 update가 필요없다면 굳이 feature로 제공할 필요가 없다. plug-ins에 직접 추가한다.
      • feature에는 application이 사용하지 않는 플러그인도 많이 들어있기 때문에 application의 size가 커질것이다.
    • feature로 제공되지 않는 플러그인들을 사용한다면 지속적인 업데이트가 필요한지 결정한다.
      • 지속적인 update가 필요없다면 Plug-ins page에 플러그인들을 추가한다.
      • 지속적인 update가 필요하다면 이 플러인들만 모아 새로운 feature를 구성한다.
      • 이 경우 이 feature의 배포 책임은 나에게 있다. 사용중인 플러그인의 새 버전이 나오면 feature를 다시 구성에 배포site에 올려주어야 할 것이다.
    • wapple은 rcp feature외에 사용되는 플러그인이 있다면 모두 Plug-ins page에 직접 추가할 것이다.

publishing site를 통해 배포하기

  • New Project >> New Update Site Project
  • 배포할 feature를 지정한다.
  • build all을 수행한다.
  • site 설정에 대한 자세한 설명은 도움말 Site Manifest Editor를 참조하도록 한다.
  • build된 site를 배포한다.
    • 사용자가 접근할 수 있는 웹사이트(site project에서 설정한 url)에 생성된 파일들을 upload한다.

이 글과 관련있는 글을 자동검색한 결과입니다 [?]

by 열정몰입 | 2008/03/18 18:55 | Eclipse | 트랙백 | 덧글(3)

트랙백 주소 : http://swguru.egloos.com/tb/1802483
☞ 내 이글루에 이 글과 관련된 글 쓰기 (트랙백 보내기) [도움말]
Commented by a at 2008/04/02 00:42
To enable automatic updates

add the following into your preferences.ini file
/instance/org.eclipse.update.scheduler/enabled=true


preferences.ini file is the the plug in custom property file.
To create this go to your plug.xml and add a property extension
to your org.eclipse.core.runtime.products under your production extension.

name of the property should be preferenceCustomization
value = preferences.ini

put preferences.ini at the root of your project.
Commented by a at 2008/04/02 00:47
Enabling automatic updates in your plugin_customization.ini
To enable automatic scheduled updates at start up add the following lines to your plugin_customization.ini

org.eclipse.update.ui/discoverySitesEnabled=true
org.eclipse.update.scheduler/enabled = true
org.eclipse.update.scheduler/schedule = on-startup
org.eclipse.update.scheduler/download = false
org.eclipse.update.core/org.eclipse.update.core.checkSignature = false
Commented by a at 2008/04/02 00:47
http://www.richclient2.eu/2007_07_03/updates-for-rcp-dummies-restricting-the-update-manager/

:         :

:

비공개 덧글

◀ 이전 페이지다음 페이지 ▶