본문 바로가기

프로그래밍/JAVA

[eclipse] simple plug-in example

Help > Platform Plug-in Developer Guide > Programmer's Guide > Simple plug-in example


1. 플러그인 프로젝트 생성

2. 템플릿은 Plug-in with a view 로 만든다.

3. 뷰 수정

View는 ViewPart를 상속해 만들어지는데, 일단 기본 구조를 확인하기 위해 생성된 코드를 지운 후 Label을 만들어 Hello World 를 찍어보자. 당연히 Label은 org.eclipse.swt.widgets.Label이다.


public class SampleView extends ViewPart {

Label label;


@Override

public void createPartControl(Composite parent) {

// TODO Auto-generated method stub

label = new Label( parent, SWT.WRAP );

label.setText("Hello World");

}


@Override

public void setFocus() {

// TODO Auto-generated method stub

}


}


윈도우빌더 플러그인이 설치되어 있다면, SampleView.java 파일에서 Open With>Other...>Window Builder Editor 를 사용해 편집할 수도 있다.



4. plugin 정보 수정

plugin.xml을 살펴보자.

이클립스 플러그인은 extention point를 통해 참조할 인터페이스를 정의하는데, 해당 내용을 plugin.xml에 기술하도록 되어 있다. 생성된 항목은 org.eclipse.ui.views , org.eclipse.ui.perspectiveExtensions (체크한경우) 이 정의되어 있다. 이 역시 불필요한 항목을 지우고 필요한 내용만 넣어보자.


<?xml version="1.0" encoding="UTF-8"?>

<?eclipse version="3.4"?>

<plugin>

<extension point="org.eclipse.ui.views">

<category

name="Helloworld Category"

id="com.sample.helloworld">

</category>

<view

name="Hollo View"

icon="icons/sample.gif"

category="com.sample.helloworld"

class="com.sample.helloworld.SampleView"

id="com.sample.helloworld.SampleView">

</view>

</extension>

</plugin>

view extension을 위해서는 카테고리, 뷰 정보를 기술하고, 뷰는 카테고리 정보를 가지고 있음을 알 수 있다.

MANIFEST.MF 선택 후 Overview 오른쪽에 보면 Testing 항목이 있다. Launch an Eclipse application 을 선택해 실행해 본다. 


플러그인이기에 Work bench가 새로 생성된다. 

Window>Show View>Other..  정의했던 카테고리 아래에 뷰가 하나 생겼다.



뭐 결과는 별거 없이 Hello World가 찍히는 View가 생성된다.






플러그인 설치하기 


File>Export>Plug-in Development>Deployable plug-ins fragments







1. Directory

해당 디렉토리명/plugin/패키지_버전.jar

생성된 jar 파일을 eclipse/dropin/ 폴더에 넣으면 된다.


2. install into host.Repository

해당 워크스페이스의 플러그인 설치 폴더로 지정하면, 바로 적용이 가능하다.

Workspace/.metadata/.plugins/org.eclipse.pde.core/install/ 




업데이트를 통해 설치하기

plug-in : com.sample.one


File>New>Plug-in Development>Feature Project





다음을 눌러 해당 플러그인을 선택한다.





카테고리 정의

만들어진 feature project에 Category Definition을 추가한다.

File>New>Other...>Plug-in development>Category Definition


category.xml이 추가되면, 새로운 카테고리를 추가 후 Add Plug-in으로 해당 플러그인을 선택한다.




실제 내용은 아래와 같다.

<?xml version="1.0" encoding="UTF-8"?>

<site>

   <bundle id="com.sample.one" version="1.0.0.qualifier">

      <category name="new_category_1"/>

   </bundle>

   <category-def name="new_category_1" label="New Category 1"/>

</site>



프로젝트를 export한다.

File>Export>Plug-in Development>Deployable features

Options 항목에서 Categorize repository에 category.xml을 선택한다.



해당 폴더에 plugins/ , features/ 폴더에 업데이트에 필요한 파일들이 생성된다.


이제 이클립스의 Install New Software에서 해당 로컬폴더를 선택하면

해당 플러그인이 보여지게 된다.




'프로그래밍 > JAVA' 카테고리의 다른 글

[OSGi] 서비스 등록 및 해제  (0) 2014.03.21
[eclipse] eclipse 4 platform  (0) 2014.03.17
Annotation  (0) 2014.03.15
[swt] 이벤트  (0) 2014.03.14
[eclipse] Extention Points  (0) 2014.03.14
Apache HttpClient 관련 정리  (0) 2014.03.11
[JAVA TV] MHP 배경이미지 처리  (0) 2013.12.27
[JAVA TV] 타이머  (0) 2013.12.27
[awt] 이미지 읽기~  (0) 2013.12.17
GSON 간단 사용 예  (0) 2013.09.12