SlideShare une entreprise Scribd logo
1  sur  11
Eclipse 3.6

ECLIPSE P2 UPDATE
              조현종(v0.1, 11/11/08)
              http://cafe.naver.com/eclipseplugin
              http://hangumkj.blogspot.com/
              hangum@gmail.com
목 차

   Making the application updateable
   Feature / Product setup
   배포
   참고자료

이 PPT는
http://www.ralfebert.de/blog/eclipsercp/p2_upd
ates_tutorial_36/
를 요약 하였습니다.
Making the application updateable


 Creating the example project
   Create a new plug-in project com.example.mail
 Download org.eclipselabs.p2.rcpupdate
 File -> Import -> Existing Projects
 Create a new menu
   <extension point="org.eclipse.ui.menus">
     <menuContribution locationURI="menu:help">
      <command commandId="org.eclipselabs.p2.rcpupdate.install" style="push"/>
      <command commandId="org.eclipselabs.p2.rcpupdate.update" style="push"/>
     </menuContribution>
   </extension>


 Add a package import to
  org.eclipselabs.p2.rcpupdate.utils
Making the application updateable


 Application startup by calling P2Util
   public class ApplicationWorkbenchAdvisor extends WorkbenchAdvisor {
     // ...

       @Override
       public void preStartup() {
         P2Util.checkForUpdates();
       }
   }
Feature / Product setup

 P2 will only install features.
    Make a feature project.
      com.example.mail.app
    Referenced a main plugins
      com.example.mail
 Add org.eclipse.rcp and org.eclipselabs.p2.rcpupdate to the list of
   included features
Feature / Product setup

 Create a new product
   mail.product
   File -> New
    -> Plug-in Development
    -> Product configuration
 Open a mail.product
   Check version number like ‘1.0.0.qualifier’
Feature / Product setup

 Add the feature com.example.mail.app
   Product dependencies and
     delete the version number
     (Properties…)

 Create a p2.inf file
  instructions.configure=
    addRepository(type:0,location:file${#58}/c:/export/repository/);
    addRepository(type:1,location:file${#58}/c:/export/repository/);

  instructions.configure=
    addRepository(type:0,location:http${#58}//localhost:1234/repository/);
    addRepository(type:1,location:http${#58}//localhost:1234/repository/);


   * plugin.xml에 Build tab에 p2.inf를 선택합니다.
Feature / Product setup

 Launch the product from the product
  configuration

 Check that the application
   여기서는 단지 메뉴가 정상적으로
    있는 지만 확인합니다.
    (실제 동작하지 않습니다)
Feature / Product setup

 Export the product
   File -> Export -> eclipse product
     Check Generate metadata repository:
     배포결과
     eclipse :
              product



     repository :
        update 모듈
배포

 make tomcat project
참고 자료

 이 PT의 자료는
 http://www.ralfebert.de/blog/eclipsercp/p2_u
 pdates_tutorial_36/
 를 요약한 것입니다.

Contenu connexe

En vedette

Cacdangbai cau tao nguyen tu
Cacdangbai cau tao nguyen tuCacdangbai cau tao nguyen tu
Cacdangbai cau tao nguyen tu
Hong Hanh Nguyen
 
Lra belshaw discussant
Lra belshaw discussant Lra belshaw discussant
Lra belshaw discussant
Richard Beach
 
Smash - Richard Lavigne
Smash - Richard LavigneSmash - Richard Lavigne
Smash - Richard Lavigne
guest6028901
 
Penman - Our PR Process
Penman - Our PR ProcessPenman - Our PR Process
Penman - Our PR Process
pdhill
 
Women Of Restoration 2009 Speakers
Women Of Restoration 2009 SpeakersWomen Of Restoration 2009 Speakers
Women Of Restoration 2009 Speakers
guestfda721
 

En vedette (18)

Strategies for Using LinkedIn
Strategies for Using LinkedInStrategies for Using LinkedIn
Strategies for Using LinkedIn
 
PowerPoint presentation: Resources Oct. 10
PowerPoint presentation: Resources Oct. 10PowerPoint presentation: Resources Oct. 10
PowerPoint presentation: Resources Oct. 10
 
Cacdangbai cau tao nguyen tu
Cacdangbai cau tao nguyen tuCacdangbai cau tao nguyen tu
Cacdangbai cau tao nguyen tu
 
How Affordances of Digital Tool Use Foster Critical Literacy: GCLR Webinar pr...
How Affordances of Digital Tool Use Foster Critical Literacy: GCLR Webinar pr...How Affordances of Digital Tool Use Foster Critical Literacy: GCLR Webinar pr...
How Affordances of Digital Tool Use Foster Critical Literacy: GCLR Webinar pr...
 
Den attraktiva gymnasieskolan
Den attraktiva gymnasieskolanDen attraktiva gymnasieskolan
Den attraktiva gymnasieskolan
 
Lra belshaw discussant
Lra belshaw discussant Lra belshaw discussant
Lra belshaw discussant
 
Smash - Richard Lavigne
Smash - Richard LavigneSmash - Richard Lavigne
Smash - Richard Lavigne
 
Whole brain teaching
Whole brain teachingWhole brain teaching
Whole brain teaching
 
маркетинг в сфере услуг
маркетинг в сфере услугмаркетинг в сфере услуг
маркетинг в сфере услуг
 
Olli september26
Olli september26Olli september26
Olli september26
 
Swt J Face 1/3
Swt J Face 1/3Swt J Face 1/3
Swt J Face 1/3
 
Penman - Our PR Process
Penman - Our PR ProcessPenman - Our PR Process
Penman - Our PR Process
 
Creating A Facebook Fan Page
Creating A Facebook  Fan  PageCreating A Facebook  Fan  Page
Creating A Facebook Fan Page
 
Eclipse RAP
Eclipse RAPEclipse RAP
Eclipse RAP
 
Leicester Stadium Kp
Leicester Stadium KpLeicester Stadium Kp
Leicester Stadium Kp
 
Women Of Restoration 2009 Speakers
Women Of Restoration 2009 SpeakersWomen Of Restoration 2009 Speakers
Women Of Restoration 2009 Speakers
 
Eclipse RCP 2/2
Eclipse RCP 2/2Eclipse RCP 2/2
Eclipse RCP 2/2
 
Corporate Pitch 1107
Corporate Pitch 1107Corporate Pitch 1107
Corporate Pitch 1107
 

Plus de cho hyun jong

평범한 개발자 오픈소스로 먹고살기 2
평범한 개발자 오픈소스로 먹고살기 2평범한 개발자 오픈소스로 먹고살기 2
평범한 개발자 오픈소스로 먹고살기 2
cho hyun jong
 
올챙이팜플렛 V1.0
올챙이팜플렛 V1.0올챙이팜플렛 V1.0
올챙이팜플렛 V1.0
cho hyun jong
 
Eclipse basic(조현종)
Eclipse basic(조현종)Eclipse basic(조현종)
Eclipse basic(조현종)
cho hyun jong
 
Tadpole DB Hub 1.0.0
Tadpole DB Hub 1.0.0Tadpole DB Hub 1.0.0
Tadpole DB Hub 1.0.0
cho hyun jong
 
Petra보고서 개발 open자료
Petra보고서 개발 open자료Petra보고서 개발 open자료
Petra보고서 개발 open자료
cho hyun jong
 

Plus de cho hyun jong (20)

평범한 개발자 오픈소스로 먹고살기 2
평범한 개발자 오픈소스로 먹고살기 2평범한 개발자 오픈소스로 먹고살기 2
평범한 개발자 오픈소스로 먹고살기 2
 
테드폴허브(올챙이) PostgreSQL 디비 확장하기
테드폴허브(올챙이) PostgreSQL 디비 확장하기테드폴허브(올챙이) PostgreSQL 디비 확장하기
테드폴허브(올챙이) PostgreSQL 디비 확장하기
 
평범한 개발자 오픈소스로 먹고살기 2
평범한 개발자 오픈소스로 먹고살기 2평범한 개발자 오픈소스로 먹고살기 2
평범한 개발자 오픈소스로 먹고살기 2
 
자바가 디비와 사귀기 까지 벌어지는 일들
자바가 디비와 사귀기 까지 벌어지는 일들자바가 디비와 사귀기 까지 벌어지는 일들
자바가 디비와 사귀기 까지 벌어지는 일들
 
테드폴허브 오픈소스Vs엔터프라이즈
테드폴허브 오픈소스Vs엔터프라이즈테드폴허브 오픈소스Vs엔터프라이즈
테드폴허브 오픈소스Vs엔터프라이즈
 
올챙이팜플렛 V1.0
올챙이팜플렛 V1.0올챙이팜플렛 V1.0
올챙이팜플렛 V1.0
 
올챙이팜플렛
올챙이팜플렛올챙이팜플렛
올챙이팜플렛
 
Tadpole db hub-monitoring
Tadpole db hub-monitoring Tadpole db hub-monitoring
Tadpole db hub-monitoring
 
Swt bot
Swt botSwt bot
Swt bot
 
Eclipse basic(조현종)
Eclipse basic(조현종)Eclipse basic(조현종)
Eclipse basic(조현종)
 
오픈소스 프로젝트 올챙이
오픈소스 프로젝트 올챙이오픈소스 프로젝트 올챙이
오픈소스 프로젝트 올챙이
 
Tadpole DB Hub 1.0.0
Tadpole DB Hub 1.0.0Tadpole DB Hub 1.0.0
Tadpole DB Hub 1.0.0
 
올챙이(Tadpole for DB Tools)로 살펴보는 Eclipse RAP
올챙이(Tadpole for DB Tools)로 살펴보는 Eclipse RAP올챙이(Tadpole for DB Tools)로 살펴보는 Eclipse RAP
올챙이(Tadpole for DB Tools)로 살펴보는 Eclipse RAP
 
올챙이 현재와 미래
올챙이 현재와 미래올챙이 현재와 미래
올챙이 현재와 미래
 
올챙이로 살펴보는 Eclipse개발
올챙이로 살펴보는 Eclipse개발올챙이로 살펴보는 Eclipse개발
올챙이로 살펴보는 Eclipse개발
 
올챙이로 살펴보는 개발툴과 Cloud
올챙이로 살펴보는 개발툴과 Cloud올챙이로 살펴보는 개발툴과 Cloud
올챙이로 살펴보는 개발툴과 Cloud
 
Eclipse RAP design
Eclipse RAP designEclipse RAP design
Eclipse RAP design
 
WindowTester PRO
WindowTester PROWindowTester PRO
WindowTester PRO
 
Eclipse RAP - Single Source
Eclipse RAP - Single SourceEclipse RAP - Single Source
Eclipse RAP - Single Source
 
Petra보고서 개발 open자료
Petra보고서 개발 open자료Petra보고서 개발 open자료
Petra보고서 개발 open자료
 

Dernier

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
WSO2
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Victor Rentea
 

Dernier (20)

Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontology
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
 

Eclipse P2 update

  • 1. Eclipse 3.6 ECLIPSE P2 UPDATE 조현종(v0.1, 11/11/08) http://cafe.naver.com/eclipseplugin http://hangumkj.blogspot.com/ hangum@gmail.com
  • 2. 목 차  Making the application updateable  Feature / Product setup  배포  참고자료 이 PPT는 http://www.ralfebert.de/blog/eclipsercp/p2_upd ates_tutorial_36/ 를 요약 하였습니다.
  • 3. Making the application updateable  Creating the example project  Create a new plug-in project com.example.mail  Download org.eclipselabs.p2.rcpupdate  File -> Import -> Existing Projects  Create a new menu <extension point="org.eclipse.ui.menus"> <menuContribution locationURI="menu:help"> <command commandId="org.eclipselabs.p2.rcpupdate.install" style="push"/> <command commandId="org.eclipselabs.p2.rcpupdate.update" style="push"/> </menuContribution> </extension>  Add a package import to org.eclipselabs.p2.rcpupdate.utils
  • 4. Making the application updateable  Application startup by calling P2Util public class ApplicationWorkbenchAdvisor extends WorkbenchAdvisor { // ... @Override public void preStartup() { P2Util.checkForUpdates(); } }
  • 5. Feature / Product setup  P2 will only install features.  Make a feature project.  com.example.mail.app  Referenced a main plugins  com.example.mail  Add org.eclipse.rcp and org.eclipselabs.p2.rcpupdate to the list of included features
  • 6. Feature / Product setup  Create a new product  mail.product  File -> New -> Plug-in Development -> Product configuration  Open a mail.product  Check version number like ‘1.0.0.qualifier’
  • 7. Feature / Product setup  Add the feature com.example.mail.app  Product dependencies and delete the version number (Properties…)  Create a p2.inf file instructions.configure= addRepository(type:0,location:file${#58}/c:/export/repository/); addRepository(type:1,location:file${#58}/c:/export/repository/); instructions.configure= addRepository(type:0,location:http${#58}//localhost:1234/repository/); addRepository(type:1,location:http${#58}//localhost:1234/repository/); * plugin.xml에 Build tab에 p2.inf를 선택합니다.
  • 8. Feature / Product setup  Launch the product from the product configuration  Check that the application  여기서는 단지 메뉴가 정상적으로 있는 지만 확인합니다. (실제 동작하지 않습니다)
  • 9. Feature / Product setup  Export the product  File -> Export -> eclipse product  Check Generate metadata repository:  배포결과 eclipse : product repository : update 모듈
  • 11. 참고 자료  이 PT의 자료는 http://www.ralfebert.de/blog/eclipsercp/p2_u pdates_tutorial_36/ 를 요약한 것입니다.