목차 >> Glue Plug-In 
+- Glue Project  
----+- Glue Java Project 
----+- Glue Maven Project

4장 Glue Plug-In

Glue Project

Glue Plug-In을 통해 다음 2가지 유형의 Project 생성을 지원합니다. (Eclipse IDE의 File 메뉴의 New -> Project)

  • Glue Java Project
  • Glue Maven Project
    그림 : Glue Project 생성 wizard
    Glue Project 생성 wizard

Glue Project 생성시 GlueSDK_HOME/templateFolder 에 있는 파일이 이용됩니다.
Glue Java Project 형태로 생성하면 ant 를 이용할 수 있는 형태로 프로젝트가 생성됩니다.
Glue Maven Project 형태로 생성하면 mvn 을 이용 할 수 있는 형태로 프로젝트가 생성됩니다.

Glue Java Project

Glue Java Project 형태에서는 GLUE_CORE 와 GLUE_STD 라는 user library 자동으로 설정됩니다. GlueSDK의 gluelib 와 gluestd에 있는 라이브러리들로 자동 구성됩니다. GlueSDK의 gluelib와 gluestd의 라이브러리가 변경될 경우, Glue SDK Location을 설정하는 Preference 창의 apply 버튼을 이용해 user library를 재로딩 할 수 있습니다.
GlueSDK의 gluestd 에는 최소한의 라이브러리로 구성되어 있으며, 추가적인 기능을 사용하고자 한다면, gluestd에 해당 라이브러리를 추가해야 합니다. 일부 오픈소스 라이브러리는 gluestd_ 로 시작하는 폴더에 있으며, 빠진 라이브러리들은 해당 라이브러리를 제공하는 사이트에서 다운받아 구성하여야 합니다.
LM포털의 기술문서 게시판에 등록된 '[동영상]개발환경 구성(Eclipse)'을 참고하십시요.

다음은 Glue Java Project로 프로젝트를 생성한 결과입니다.

그림 : Glue Project 구조 : Java
Glue Project 구조

Glue Maven Project

Glue Maven Project에서는 Maven Dependencies를 통해 프로젝트에서 사용하는 Library가 구성됩니다. pom.xml 파일에 다음과 같은 dependency를 추가하기 위해서는 따로 Repository를 구성하여야 하며, Repository의 구성은 여기서는 다루지 않습니다.
아래와 같은 형태에서 artifactId 와 version은 GlueSDK_HOME/lib/gluelib(또는 GlueSDK_HOME/repo) 에 있는 jar 파일의 이름을 참고해서 구성합니다.

<dependency>
    <groupId>com.poscoict</groupId>
    <artifactId>glue-core</artifactId>
    <version>${glue-version}</version>
</dependency>

LM포털의 기술문서 게시판에 등록된 '[동영상]Maven 사용 개발 환경 구성'을 참고하십시요.

다음은 Glue Maven Project로 프로젝트를 생성한 결과입니다.

그림 : Glue Project 구조 : Maven
Glue Project 구조

Eclipse IDE에서의 pom.xml의 'Dependency Hierarchy' 탭을 통해 사용하는 Open Source의 의존도를 다음과 같이 확인 할 수 있습니다.
그리고 glue-core는 Glue Core 모듈의 프로젝트 문서화에서 확인 할 수 있습니다. (프로젝트 정보 >> 의존물들(Dependencies) 참고)

그림 : pom.xml 의 Dependency Hierachy
pom.xml 의 Dependency Hierarchy

pom.xml에서 불필요하다고 판단되는 library는 다음과 같이 제외시킬 수 있습니다. 다음은 commons-logging 을 제외시킨 모습입니다.

<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-core</artifactId>
    <version>3.2.8.RELEASE</version>
    <scope>runtime</scope>
    <exclusions>
        <exclusion>
            <artifactId>commons-logging</artifactId>
            <groupId>commons-logging</groupId>
        </exclusion>
    </exclusions>
</dependency>

^L

Prev Home Next