1. Maven Plugin

본 절에서는 JEUS Maven Plugin에 대해 설명한다. JEUS Maven Plugin을 사용하면 Apache Maven을 사용하여 JEUS 서버를 기동하거나, 애플리케이션을 배포하는 등과 같은 작업을 수행할 수 있다.

본 절에서는 Apache Maven에 대한 기본적인 내용은 서술하지 않으며, 독자가 이미 Apache Maven에 대한 충분한 지식을 갖추고 있고, Apache Maven이 이미 정상적으로 설치되어 있다고 가정하고 설명을 진행한다. Apache Maven에 대한 사항은 http://maven.apache.org을 참고하도록 한다.

1.1. 설치

JEUS Maven Plugin을 사용하기 위해서는 플러그인을 설치하는 작업을 먼저 진행해야 한다.

JEUS Maven Plugin은 다음 경로에서 찾을 수 있다.

JEUS_HOME/lib/systemapps/jeus-maven-plugin.jar

설치 과정은 다음과 같다.

  1. jeus-maven-plugin.jar를 임의의 디렉터리에 복사한다(디렉터리 이름은 임의로 설정한다).

    mkdir /home/user1/jeus-maven-plugin
    cd /home/user1/jeus-maven-plugin
    cp JEUS_HOME/lib/systemapps/jeus-maven-plugin.jar /home1/user/jeus-maven-plugin
  2. 임의의 디렉터리로 이동한 후 jeus-maven-plugin.jar에 압축되어 있는 pom.xml을 푼다.

    jar xvf /home/user1/jeus-maven-plugin/jeus-maven-plugin META-INF/maven/com.tmax.jeus/jeus-maven-plugin/pom.xml
  3. 다음 명령어를 이용하여 JEUS Maven Plugin을 사용자의 maven local repository에 설치한다.

    mvn install:install-file -Dfile=/home/user1/jeus-maven-plugin/jeus-maven-plugin.jar -DpomFile=META-INF/maven/com.tmax.jeus/jeus-maven-plugin/pom.xml

1.2. Maven Plugin Goals

JEUS Maven Plugin에서 제공하는 goal들에 대해 설명한다.

1.2.1. start-master-xml

DAS(start-das)를 기동한다. 내부적으로는 JEUS_HOME/bin 아래에 있는 스크립트를 실행한다.

  • 사용법

    com.tmax.jeus:jeus-maven-plugin:start-master-xml
  • 매개변수

    아래 매개변수 중 user와 password, filename은 필수 입력항목이 아니지만, user/password 또는 filename 중 하나는 반드시 설정해야 한다.

    매개변수 이름 프로퍼티 이름 타입 설명

    jeusHome

    jeus.home

    java.lang.String

    JEUS가 설치되어 있는 경로를 설정한다.

    (필수 입력항목)

    host

    jeus.server.host

    java.lang.String

    DAS의 host address를 설정한다.

    (필수 입력항목)

    port

    jeus.server.port

    java.lang.Integer

    DAS의 포트 번호를 설정한다. (필수 입력항목)

    user

    jeus.user.name

    java.lang.String

    JEUS 사용자 이름을 설정한다.

    password

    jeus.user.password

    java.lang.String

    JEUS 사용자 비밀번호를 설정한다.

    domain

    jeus.domain.name

    java.lang.String

    DAS가 속한 domain 이름을 설정한다.

    (필수 입력항목)

    server

    jeus.server.name

    java.lang.String

    DAS 이름을 설정한다. (필수 입력항목)

    filename

    jeus.auth.file

    java.lang.String

    JEUS 인증할 때 사용할 계정 정보 파일을 설정한다. startDomainAdminServer 스크립트에서 제공하는 f 옵션과 동일하다.

    waitingTime

    jeus.boot.timeout

    java.lang.Integer

    JEUS를 기동시키고 난 후 플러그인에서는 일정 시간 동안 기다리면서 서버가 제대로 기동되었는지 여부를 검사하여 goal이 성공적으로 수행되었는지 여부를 판단한다. 이때 얼마나 기다릴지 설정하는 값이다. (단위: 초, 기본값: 10초)

    cachelogin

    jeus.server.start.cachelogin

    boolean

    기동할 때 사용한 인증 정보를 저장할지 여부를 설정한다. (기본값: false)

    force

    jeus.server.start.forced

    boolean

    기동할 때 설정되어 있는 애플리케이션이 모두 RUNNING 상태가 되지 않더라도 부팅이 완료되게 한다. (기본값: false)

    rolling

    jeus.server.start.rolling

    boolean

    Rolling patch 기능 사용 여부를 설정한다.

    (기본값: false)

    verbose

    jeus.server.start.verbose

    boolean

    상세 출력 사용 여부를 설정한다.

    (기본값: false)

    standby

    jeus.server.start.standby

    boolean

    Standby booting 사용 여부를 설정한다.

    (기본값: false)

  • 예제

    매개변수는 pom.xml에 설정하거나 command line에서 실행할 때 지정할 수 있다.

    다음은 pom.xml에 설정을 한 예제이다.

    <!-- JEUS Maven Plugin - start-das -->
    <plugin>
        <groupId>com.tmax.jeus</groupId>
        <artifactId>jeus-maven-plugin</artifactId>
        <version>8.0.0.0</version>
        <configuration>
          <jeusHome>/home/user1/jeus</jeusHome>
        <host>host1</host>
        <port>9736</port>
        <user>administrator</user>
        <password>jeus</password>
        <domain>domain1</domain>
        <server>adminServer</server>
      </configuration>
    </plugin>

    goal을 실행하였을 경우 출력되는 결과는 다음과 같다.

    $ mvn com.tmax.jeus:jeus-maven-plugin:start-master-xml
    [INFO] Scanning for projects...
    [INFO]
    [INFO] ------------------< com.tmax.jeus:jeus-maven-plugin >-------------------
    [INFO] Building JEUS Maven Plugin 8.0.0.0
    [INFO] ----------------------------[ maven-plugin ]----------------------------
    [INFO]
    [INFO] --- jeus-maven-plugin:8.0.0.0:start-master-xml (default-cli) @ jeus-maven-plugin ---
    [INFO] ------------------------------------------------------------------------
    [INFO] BUILD SUCCESS
    [INFO] ------------------------------------------------------------------------
    [INFO] Total time:  30.857 s
    [INFO] Finished at: 2022-08-30T07:52:10+09:00
    [INFO] ------------------------------------------------------------------------

1.2.2. start-ms-xml

MS를 기동한다. 내부적으로는 JEUS_HOME/bin 아래에 있는 스크립트를 실행한다.

  • 사용법

    com.tmax.jeus:jeus-maven-plugin:start-ms-xml
  • 매개변수

    아래 매개변수 중 user와 password, filename은 필수 입력항목이 아니지만, user/password 또는 filename 중 하나는 반드시 설정해야 한다.

    매개변수 이름 프로퍼티 이름 타입 설명

    jeusHome

    jeus.home

    java.lang.String

    JEUS가 설치되어 있는 경로를 설정한다.

    (필수 입력항목)

    host

    jeus.server.host

    java.lang.String

    DAS의 host address를 설정한다.

    (필수 입력항목)

    port

    jeus.server.port

    java.lang.Integer

    DAS의 포트 번호를 설정한다. (필수 입력항목)

    user

    jeus.user.name

    java.lang.String

    JEUS 사용자 이름을 설정한다.

    password

    jeus.user.password

    java.lang.String

    JEUS 사용자 비밀번호를 설정한다.

    domain

    jeus.domain.name

    java.lang.String

    DAS가 속한 domain 이름을 설정한다.

    (필수 입력항목)

    server

    jeus.server.name

    java.lang.String

    DAS 이름을 설정한다. (필수 입력항목)

    filename

    jeus.auth.file

    java.lang.String

    JEUS를 인증할 때 사용할 계정 정보 파일을 설정한다. startDomainAdminServer 스크립트에서 제공하는 f 옵션과 동일하다.

    waitingTime

    jeus.boot.timeout

    java.lang.Integer

    JEUS를 기동시키고 난 후 플러그인에서는 일정 시간 동안 기다리면서 서버가 제대로 기동되었는지 여부를 검사하여 goal이 성공적으로 수행되었는지 여부를 판단한다. 이때 얼마나 기다릴지 설정하는 값이다. (단위: 초, 기본값: 10초)

    cachelogin

    jeus.server.start.cachelogin

    boolean

    기동할 때 사용한 인증 정보를 저장할지 여부를 설정한다. (기본값: false)

    force

    jeus.server.start.forced

    boolean

    기동할 때 설정되어 있는 애플리케이션이 모두 RUNNING 상태가 되지 않더라도 부팅이 완료되게 한다. (기본값: false)

    rolling

    jeus.server.start.rolling

    boolean

    Rolling patch 기능 사용 여부를 설정한다.

    (기본값: false)

    verbose

    jeus.server.start.verbose

    boolean

    상세 출력 사용 여부를 설정한다. (기본값: false)

    standby

    jeus.server.start.standby

    boolean

    Standby booting 사용 여부를 설정한다.

    (기본값: false)

    dasurl

    jeus.server.start.dasurl

    java.lang.String

    MS가 속한 domain을 관리하는 DAS의 url을 설정한다. (필수 입력항목)

  • 예제

    매개변수는 pom.xml에 설정하거나 command line에서 실행할 때 지정할 수 있다.

    다음은 pom.xml에 설정을 한 예제이다.

    <!-- JEUS Maven Plugin - start-ms -->
    <plugin>
      <groupId>com.tmax.jeus</groupId>
      <artifactId>jeus-maven-plugin</artifactId>
      <version>8.0.0.0</version>
      <configuration>
        <jeusHome>/home/user1/jeus</jeusHome>
        <host>host1</host>
        <port>9736</port>
        <user>administrator</user>
        <password>jeus</password>
        <domain>domain1</domain>
        <server>server1</server>
        <dasurl>host1:9736</dasurl>
      </configuration>
    </plugin>

    goal을 실행하였을 경우 출력되는 결과는 다음과 같다.

    $ mvn jeus.tool:jeus-maven-plugin:start-ms
    [INFO] Scanning for projects...
    [INFO]
    [INFO] ------------------< com.tmax.jeus:jeus-maven-plugin >-------------------
    [INFO] Building JEUS Maven Plugin 8.0.0.0
    [INFO] ----------------------------[ maven-plugin ]----------------------------
    [INFO]
    [INFO] --- jeus-maven-plugin:8.0.0.0:start-ms-xml (default-cli) @ jeus-maven-plugin ---
    [INFO] ------------------------------------------------------------------------
    [INFO] BUILD SUCCESS
    [INFO] ------------------------------------------------------------------------
    [INFO] Total time:  6.174 s
    [INFO] Finished at: 2022-08-30T08:13:58+09:00
    [INFO] ------------------------------------------------------------------------

1.2.3. stop-jeus

접속한 서버를 종료시킨다. 내부적으로는 콘솔 툴(jeusadmin)에서 제공하는 one-step execution 기능을 사용하여 local-shutdown 명령어를 실행한다.

  • 사용법

    com.tmax.jeus:jeus-maven-plugin:stop-jeus
  • 매개변수

    매개변수 이름 프로퍼티 이름 타입 설명

    jeusHome

    jeus.home

    java.lang.String

    JEUS가 설치되어 있는 경로를 설정한다.

    (필수 입력항목)

    host

    jeus.server.host

    java.lang.String

    jeusadmin으로 접속할 서버의 주소이다.

    (필수 입력항목)

    port

    jeus.server.port

    java.lang.Integer

    jeusadmin으로 접속할 서버의 포트 번호이다. (기본값: 9736, 필수 입력항목)

    user

    jeus.user.name

    java.lang.String

    JEUS 사용자 이름을 설정한다.

    (필수 입력항목)

    password

    jeus.user.password

    java.lang.String

    JEUS 사용자 비밀번호를 설정한다.

    (필수 입력항목)

    args

    없음

    java.util.List

    명령어를 실행할 때 넘겨줄 인자값들을 설정한다. arg와 args 둘 다 설정하였을 경우 arg가 우선한다. pom.xml에 설정할 경우 사용하는 것을 권장한다.

    arg

    jeus.jeusadmin.command.arguments

    java.lang.String

    명령어를 실행할 때 넘겨줄 인자값들을 설정한다. arg와 args 둘 다 설정하였을 경우 arg가 우선한다.

  • 예제

    매개변수는 pom.xml에 설정하거나 command line에서 실행할 때 지정할 수 있다.

    다음은 pom.xml에 설정을 한 예제이다.

    <!-- JEUS Maven Plugin - stop-jeus -->
    <plugin>
      <groupId>com.tmax.jeus</groupId>
      <artifactId>jeus-maven-plugin</artifactId>
      <version>8.0.0.0</version>
      <configuration>
        <jeusHome>/home/user1/jeus</jeusHome>
        <host>host1</host>
        <port>9736</port>
        <user>administrator</user>
        <password>jeus</password>
      </configuration>
    </plugin>

    goal을 실행하였을 경우 일반적으로 출력되는 결과는 다음과 같다.

    $ mvn jeus.tool:jeus-maven-plugin:stop-jeus
    [INFO] Scanning for projects...
    [INFO]
    [INFO] ------------------< com.tmax.jeus:jeus-maven-plugin >-------------------
    [INFO] Building JEUS Maven Plugin 8.0.0.0
    [INFO] ----------------------------[ maven-plugin ]----------------------------
    [INFO]
    [INFO] --- jeus-maven-plugin:8.0.0.0:stop-jeus (default-cli) @ jeus-maven-plugin ---
    [INFO] jeus.home = D:\gitWorkspace\jeus21\target\jeus
    [INFO] jeusadmin.path = D:\gitWorkspace\jeus21\target\jeus\bin\jeusadmin.cmd
    [INFO] jeusadmin.one-step-execution-command = [local-shutdown]
    [INFO] Attempting to connect to localhost:9736.
    [INFO] The connection has been established to JEUS Master Server [adminServer] in the domain [domain1].
    [INFO] The server [adminServer] has been shut down successfully.
    [INFO] ------------------------------------------------------------------------
    [INFO] BUILD SUCCESS
    [INFO] ------------------------------------------------------------------------
    [INFO] Total time:  4.381 s
    [INFO] Finished at: 2022-08-30T08:18:08+09:00
    [INFO] ------------------------------------------------------------------------

1.2.4. deploy

애플리케이션을 deploy한다. 내부적으로는 콘솔 툴(jeusadmin)에서 제공하는 one-step execution 기능을 사용하여 deploy-application 명령어를 실행한다.

  • 사용법

    com.tmax.jeus:jeus-maven-plugin:deploy
  • 매개변수

    매개변수 이름 프로퍼티 이름 타입 설명

    jeusHome

    jeus.home

    java.lang.String

    JEUS가 설치되어 있는 경로를 설정한다.

    (필수 입력항목)

    host

    jeus.server.host

    java.lang.String

    jeusadmin으로 접속할 서버의 주소이다.

    (필수 입력항목)

    port

    jeus.server.port

    java.lang.Integer

    jeusadmin으로 접속할 서버의 포트 번호이다. (기본값: 9736, 필수 입력항목)

    user

    jeus.user.name

    java.lang.String

    JEUS 사용자 이름을 설정한다.

    (필수 입력항목)

    password

    jeus.user.password

    java.lang.String

    JEUS 사용자 비밀번호를 설정한다.

    (필수 입력항목)

    args

    없음

    java.util.List

    명령어를 실행할 때 넘겨줄 인자값들을 설정한다. arg와 args 둘 다 설정하였을 경우 arg가 우선한다. pom.xml에 설정할 경우 사용하는 것을 권장한다.

    arg

    jeus.jeusadmin.command.arguments

    java.lang.String

    명령어를 실행할 때 넘겨줄 인자값들을 설정한다. arg와 args 둘 다 설정하였을 경우 arg가 우선한다.

  • 예제

    매개변수는 pom.xml에 설정하거나 command line에서 실행할 때 지정할 수 있다.

    다음은 pom.xml에 설정을 한 예제이다.

    <!-- JEUS Maven Plugin - deploy -->
    <plugin>
      <groupId>com.tmax.jeus</groupId>
      <artifactId>jeus-maven-plugin</artifactId>
      <version>8.0.0.0</version>
      <configuration>
        <jeusHome>/home/user1/jeus</jeusHome>
        <host>host1</host>
        <port>9736</port>
        <user>administrator</user>
        <password>jeus</password>
        <args>
          <param>myWeb</param>
          <param>-servers adminServer</param>
        </args>
      </configuration>
    </plugin>

    goal을 실행하였을 경우 일반적으로 출력되는 결과는 다음과 같다.

    $ mvn jeus.tool:jeus-maven-plugin:deploy
    [INFO] Scanning for projects...
    [INFO]
    [INFO] ------------------< com.tmax.jeus:jeus-maven-plugin >-------------------
    [INFO] Building JEUS Maven Plugin 8.0.0.0
    [INFO] ----------------------------[ maven-plugin ]----------------------------
    [INFO]
    [INFO] --- jeus-maven-plugin:8.0.0.0:deploy (default-cli) @ jeus-maven-plugin ---
    [INFO] jeus.home = D:\gitWorkspace\jeus21\target\jeus
    [INFO] jeusadmin.path = D:\gitWorkspace\jeus21\target\jeus\bin\jeusadmin.cmd
    [INFO] jeusadmin.one-step-execution-command = [deploy-application servlet]
    [INFO] Attempting to connect to localhost:9736.
    [INFO] The connection has been established to JEUS Master Server [adminServer] in the domain [domain1].
    [INFO] deploy the application for the application [servlet] failed. : The target for the application [servlet] is not specified.
    [INFO] ------------------------------------------------------------------------
    [INFO] BUILD SUCCESS
    [INFO] ------------------------------------------------------------------------
    [INFO] Total time:  1.217 s
    [INFO] Finished at: 2022-08-30T08:25:29+09:00
    [INFO] ------------------------------------------------------------------------

1.2.5. undeploy

deploy했던 애플리케이션을 undeploy한다. 내부적으로는 콘솔 툴(jeusadmin)에서 제공하는 one-step execution 기능을 사용하여 undeploy-application 명령어를 실행한다.

  • 사용법

    com.tmax.jeus:jeus-maven-plugin:undeploy
  • 매개변수

    매개변수 이름 프로퍼티 이름 타입 설명

    jeusHome

    jeus.home

    java.lang.String

    JEUS가 설치되어 있는 경로를 설정한다.

    (필수 입력항목)

    host

    jeus.server.host

    java.lang.String

    jeusadmin으로 접속할 서버의 주소이다.

    (필수 입력항목)

    port

    jeus.server.port

    java.lang.Integer

    jeusadmin으로 접속할 서버의 포트 번호이다.

    (기본값: 9736, 필수 입력항목)

    user

    jeus.user.name

    java.lang.String

    JEUS 사용자 이름을 설정한다. (필수 입력항목)

    password

    jeus.user.password

    java.lang.String

    JEUS 사용자 비밀번호를 설정한다.

    (필수 입력항목)

    args

    없음

    java.util.List

    명령어를 실행할 때 넘겨줄 인자값들을 설정한다. arg와 args 둘 다 설정하였을 경우 arg가 우선한다. pom.xml에 설정할 경우 사용하는 것을 권장한다.

    arg

    jeus.jeusadmin.command.arguments

    java.lang.String

    명령어를 실행할 때 넘겨줄 인자값들을 설정한다. arg와 args 둘 다 설정하였을 경우 arg가 우선한다.

  • 예제

    매개변수는 pom.xml에 설정하거나 command line에서 실행할 때 지정할 수 있다.

    다음은 pom.xml에 설정을 한 예제이다.

    <!-- JEUS Maven Plugin - undeploy -->
    <plugin>
      <groupId>com.tmax.jeus</groupId>
      <artifactId>jeus-maven-plugin</artifactId>
      <version>8.0.0.0</version>
      <configuration>
        <jeusHome>/home/user1/jeus</jeusHome>
        <host>host1</host>
        <port>9736</port>
        <user>administrator</user>
        <password>jeus</password>
        <args>
          <param>myWeb</param>
        </args>
      </configuration>
    </plugin>

    goal을 실행하였을 경우 일반적으로 출력되는 결과는 다음과 같다.

    $ mvn com.tmax.jeus:jeus-maven-plugin:undeploy
    [INFO] Scanning for projects...
    [INFO]
    [INFO] ------------------< com.tmax.jeus:jeus-maven-plugin >-------------------
    [INFO] Building JEUS Maven Plugin 8.0.0.0
    [INFO] ----------------------------[ maven-plugin ]----------------------------
    [INFO]
    [INFO] --- jeus-maven-plugin:8.0.0.0:undeploy (default-cli) @ jeus-maven-plugin ---
    [INFO] jeus.home = D:\gitWorkspace\jeus21\target\jeus
    [INFO] jeusadmin.path = D:\gitWorkspace\jeus21\target\jeus\bin\jeusadmin.cmd
    [INFO] jeusadmin.one-step-execution-command = [undeploy-application servlet]
    [INFO] Attempting to connect to localhost:9736.
    [INFO] The connection has been established to JEUS Master Server [adminServer] in the domain [domain1].
    [INFO] Undeploying [servlet] (This may take time due to graceful undeployment) ..........
    [INFO] undeploy the application for the application [servlet] succeeded.
    [INFO] successfully undeployed (elapsed = 282ms)
    [INFO] ------------------------------------------------------------------------
    [INFO] BUILD SUCCESS
    [INFO] ------------------------------------------------------------------------
    [INFO] Total time:  1.459 s
    [INFO] Finished at: 2022-08-30T08:24:50+09:00
    [INFO] ------------------------------------------------------------------------

1.2.6. start-app

deploy한 애플리케이션의 서비스를 시작한다. 내부적으로는 콘솔 툴(jeusadmin)에서 제공하는 one-step execution 기능을 사용하여 start-application 명령어를 실행한다.

  • 사용법

    com.tmax.jeus:jeus-maven-plugin:start-app
  • 매개변수

    매개변수 이름 프로퍼티 이름 타입 설명

    jeusHome

    jeus.home

    java.lang.String

    JEUS가 설치되어 있는 경로를 설정한다.

    (필수 입력항목)

    host

    jeus.server.host

    java.lang.String

    jeusadmin으로 접속할 서버의 주소이다.

    (필수 입력항목)

    port

    jeus.server.port

    java.lang.Integer

    jeusadmin으로 접속할 서버의 포트 번호이다. (기본값: 9736, 필수 입력항목)

    user

    jeus.user.name

    java.lang.String

    JEUS 사용자 이름을 설정한다. (필수 입력항목)

    password

    jeus.user.password

    java.lang.String

    JEUS 사용자 비밀번호를 설정한다.

    (필수 입력항목)

    args

    없음

    java.util.List

    명령어를 실행할 때 넘겨줄 인자값들을 설정한다. arg와 args 둘 다 설정하였을 경우 arg가 우선한다. pom.xml에 설정할 경우 사용하는 것을 권장한다.

    arg

    jeus.jeusadmin.command.arguments

    java.lang.String

    명령어를 실행할 때 넘겨줄 인자값들을 설정한다. arg와 args 둘 다 설정하였을 경우 arg가 우선한다.

  • 예제

    매개변수는 pom.xml에 설정하거나 command line에서 실행할 때 지정할 수 있다.

    다음은 pom.xml에 설정을 한 예제이다.

    <!-- JEUS Maven Plugin - start-app -->
    <plugin>
      <groupId>com.tmax.jeus</groupId>
      <artifactId>jeus-maven-plugin</artifactId>
      <version>8.0.0.0</version>
      <configuration>
        <jeusHome>/home/user1/jeus</jeusHome>
        <host>host1</host>
        <port>9736</port>
        <user>administrator</user>
        <password>jeus</password>
        <args>
          <param>myWeb</param>
        </args>
      </configuration>
    </plugin>

    goal을 실행하였을 경우 일반적으로 출력되는 결과는 다음과 같다.

    $ mvn com.tmax.jeus:jeus-maven-plugin:start-app
    [INFO] Scanning for projects...
    [INFO]
    [INFO] ------------------< com.tmax.jeus:jeus-maven-plugin >-------------------
    [INFO] Building JEUS Maven Plugin 8.0.0.0
    [INFO] ----------------------------[ maven-plugin ]----------------------------
    [INFO]
    [INFO] --- jeus-maven-plugin:8.0.0.0:start-app (default-cli) @ jeus-maven-plugin ---
    [INFO] jeus.home = D:\gitWorkspace\jeus21\target\jeus
    [INFO] jeusadmin.path = D:\gitWorkspace\jeus21\target\jeus\bin\jeusadmin.cmd
    [INFO] jeusadmin.one-step-execution-command = [start-application servlet]
    [INFO] Attempting to connect to localhost:9736.
    [INFO] The connection has been established to JEUS Master Server [adminServer] in the domain [domain1].
    [INFO] start the application for the application [servlet] failed. : Changing the state of the application [servlet] from [INSTALLED] to [STARTING] is not possible with the operation [start].
    [INFO] ------------------------------------------------------------------------
    [INFO] BUILD SUCCESS
    [INFO] ------------------------------------------------------------------------
    [INFO] Total time:  1.212 s
    [INFO] Finished at: 2022-08-30T08:28:45+09:00
    [INFO] ------------------------------------------------------------------------

1.2.7. stop-app

서비스 중인 애플리케이션을 정지시킨다. 내부적으로는 콘솔 툴(jeusadmin)에서 제공하는 one-step execution 기능을 사용하여 stop-application 명령어를 실행한다.

  • 사용법

    com.tmax.jeus:jeus-maven-plugin:stop-app
  • 매개변수

    매개변수 이름 프로퍼티 이름 타입 설명

    jeusHome

    jeus.home

    java.lang.String

    JEUS가 설치되어 있는 경로를 설정한다.

    (필수 입력항목)

    host

    jeus.server.host

    java.lang.String

    jeusadmin으로 접속할 서버의 주소이다.

    (필수 입력항목)

    port

    jeus.server.port

    java.lang.Integer

    jeusadmin으로 접속할 서버의 포트 번호이다. (기본값: 9736, 필수 입력항목)

    user

    jeus.user.name

    java.lang.String

    JEUS 사용자 이름을 설정한다. (필수 입력항목)

    password

    jeus.user.password

    java.lang.String

    JEUS 사용자 비밀번호를 설정한다.

    (필수 입력항목)

    args

    없음

    java.util.List

    명령어를 실행할 때 넘겨줄 인자값들을 설정한다. arg와 args 둘 다 설정하였을 경우 arg가 우선한다. pom.xml에 설정할 경우 사용하는 것을 권장한다.

    arg

    jeus.jeusadmin.command.arguments

    java.lang.String

    명령어를 실행할 때 넘겨줄 인자값들을 설정한다. arg와 args 둘 다 설정하였을 경우 arg가 우선한다.

  • 예제

    매개변수는 pom.xml에 설정하거나 command line에서 실행할 때 지정할 수 있다.

    다음은 pom.xml에 설정을 한 예제이다.

    <!-- JEUS Maven Plugin - stop-app -->
    <plugin>
      <groupId>com.tmax.jeus</groupId>
      <artifactId>jeus-maven-plugin</artifactId>
      <version>8.0.0.0</version>
      <configuration>
        <jeusHome>/home/user1/jeus</jeusHome>
        <host>host1</host>
        <port>9736</port>
        <user>administrator</user>
        <password>jeus</password>
        <args>
          <param>myWeb</param>
        </args>
      </configuration>
    </plugin>

    goal을 실행하였을 경우 일반적으로 출력되는 결과는 다음과 같다.

    $ mvn com.tmax.jeus:jeus-maven-plugin:stop-app
    [INFO] Scanning for projects...
    [INFO]
    [INFO] ------------------< com.tmax.jeus:jeus-maven-plugin >-------------------
    [INFO] Building JEUS Maven Plugin 8.0.0.0
    [INFO] ----------------------------[ maven-plugin ]----------------------------
    [INFO]
    [INFO] --- jeus-maven-plugin:8.0.0.0:stop-app (default-cli) @ jeus-maven-plugin ---
    [INFO] jeus.home = D:\gitWorkspace\jeus21\target\jeus
    [INFO] jeusadmin.path = D:\gitWorkspace\jeus21\target\jeus\bin\jeusadmin.cmd
    [INFO] jeusadmin.one-step-execution-command = [stop-application servlet]
    [INFO] Attempting to connect to localhost:9736.
    [INFO] The connection has been established to JEUS Master Server [adminServer] in the domain [domain1].
    [INFO] stop the application for the application [servlet] failed. : Changing the state of the application [servlet] from [INSTALLED] to [STOPPING] is not possible with the operation [stop].
    [INFO] ------------------------------------------------------------------------
    [INFO] BUILD SUCCESS
    [INFO] ------------------------------------------------------------------------
    [INFO] Total time:  1.233 s
    [INFO] Finished at: 2022-08-30T08:29:10+09:00
    [INFO] ------------------------------------------------------------------------

1.2.8. install-app

애플리케이션을 DAS에 설치한다. 내부적으로는 콘솔 툴(jeusadmin)에서 제공하는 one-step execution 기능을 사용하여 install-application 명령어를 실행한다.

  • 사용법

    com.tmax.jeus:jeus-maven-plugin:install-app
  • 매개변수

    매개변수 이름 프로퍼티 이름 타입 설명

    jeusHome

    jeus.home

    java.lang.String

    JEUS가 설치되어 있는 경로를 설정한다.

    (필수 입력항목)

    host

    jeus.server.host

    java.lang.String

    jeusadmin으로 접속할 서버의 주소이다.

    (필수 입력항목)

    port

    jeus.server.port

    java.lang.Integer

    jeusadmin으로 접속할 서버의 포트 번호이다. (기본값: 9736, 필수 입력항목)

    user

    jeus.user.name

    java.lang.String

    JEUS 사용자 이름을 설정한다. (필수 입력항목)

    password

    jeus.user.password

    java.lang.String

    JEUS 사용자 비밀번호를 설정한다.

    (필수 입력항목)

    args

    없음

    java.util.List

    명령어를 실행할 때 넘겨줄 인자값들을 설정한다. arg와 args 둘 다 설정하였을 경우 arg가 우선한다. pom.xml에 설정할 경우 사용하는 것을 권장한다.

    arg

    jeus.jeusadmin.command.arguments

    java.lang.String

    명령어를 실행할 때 넘겨줄 인자값들을 설정한다. arg와 args 둘 다 설정하였을 경우 arg가 우선한다.

  • 예제

    매개변수는 pom.xml에 설정하거나 command line에서 실행할 때 지정할 수 있다.

    다음은 pom.xml에 설정을 한 예제이다.

    <!-- JEUS Maven Plugin - install-app -->
    <plugin>
      <groupId>com.tmax.jeus</groupId>
      <artifactId>jeus-maven-plugin</artifactId>
      <version>8.0.0.0</version>
      <configuration>
        <jeusHome>/home/user1/jeus</jeusHome>
        <host>host1</host>
        <port>9736</port>
        <user>administrator</user>
        <password>jeus</password>
        <args>
          <param>/home/user/myWeb.war</param>
          <param>-id myWeb</param>
        </args>
      </configuration>
    </plugin>

    goal을 실행하였을 경우 일반적으로 출력되는 결과는 다음과 같다.

    $ mvn com.tmax.jeus:jeus-maven-plugin:install-app
    [INFO] Scanning for projects...
    [INFO]
    [INFO] ------------------< com.tmax.jeus:jeus-maven-plugin >-------------------
    [INFO] Building JEUS Maven Plugin 8.0.0.0
    [INFO] ----------------------------[ maven-plugin ]----------------------------
    [INFO]
    [INFO] --- jeus-maven-plugin:8.0.0.0:install-app (default-cli) @ jeus-maven-plugin ---
    [INFO] jeus.home = D:\gitWorkspace\jeus21\target\jeus
    [INFO] jeusadmin.path = D:\gitWorkspace\jeus21\target\jeus\bin\jeusadmin.cmd
    [INFO] jeusadmin.one-step-execution-command = [install-application D:\Tmax_Issue_Stuff\testAPPS_jdk\j8\recent\JDBCTransactionPropagationTester_Caller.war]
    [INFO] Attempting to connect to localhost:9736.
    [INFO] The connection has been established to JEUS Master Server [adminServer] in the domain [domain1].
    [INFO] Successfully installed the application [JDBCTransactionPropagationTester_Caller_war].
    [INFO] ------------------------------------------------------------------------
    [INFO] BUILD SUCCESS
    [INFO] ------------------------------------------------------------------------
    [INFO] Total time:  2.348 s
    [INFO] Finished at: 2022-08-30T08:40:40+09:00
    [INFO] ------------------------------------------------------------------------

1.2.9. uninstall-app

DAS에 설치되어 있는 애플리케이션을 제거한다. 내부적으로는 콘솔 툴(jeusadmin)에서 제공하는 one-step execution 기능을 사용하여 uninstall-application 명령어를 실행한다.

  • 사용법

    com.tmax.jeus:jeus-maven-plugin:uninstall-app
  • 매개변수

    매개변수 이름 프로퍼티 이름 타입 설명

    jeusHome

    jeus.home

    java.lang.String

    JEUS가 설치되어 있는 경로를 설정한다.

    (필수 입력항목)

    host

    jeus.server.host

    java.lang.String

    jeusadmin으로 접속할 서버의 주소이다.

    (필수 입력항목)

    port

    jeus.server.port

    java.lang.Integer

    jeusadmin으로 접속할 서버의 포트 번호이다. (기본값: 9736, 필수 입력항목)

    user

    jeus.user.name

    java.lang.String

    JEUS 사용자 이름을 설정한다. (필수 입력항목)

    password

    jeus.user.password

    java.lang.String

    JEUS 사용자 비밀번호를 설정한다.

    (필수 입력항목)

    args

    없음

    java.util.List

    명령어를 실행할 때 넘겨줄 인자값들을 설정한다. arg와 args 둘 다 설정하였을 경우 arg가 우선한다. pom.xml에 설정할 경우 사용하는 것을 권장한다.

    arg

    jeus.jeusadmin.command.arguments

    java.lang.String

    명령어를 실행할 때 넘겨줄 인자값들을 설정한다. arg와 args 둘 다 설정하였을 경우 arg가 우선한다.

  • 예제

    매개변수는 pom.xml에 설정하거나 command line에서 실행할 때 지정할 수 있다.

    다음은 pom.xml에 설정을 한 예제이다.

    <!-- JEUS Maven Plugin - uninstall-app -->
    <plugin>
      <groupId>com.tmax.jeus</groupId>
      <artifactId>jeus-maven-plugin</artifactId>
      <version>8.0.0.0</version>
      <configuration>
        <jeusHome>/home/user1/jeus</jeusHome>
        <host>host1</host>
        <port>9736</port>
        <user>administrator</user>
        <password>jeus</password>
        <args>
          <param>myWeb</param>
        </args>
      </configuration>
    </plugin>

    goal을 실행하였을 경우 일반적으로 출력되는 결과는 다음과 같다.

    $ mvn com.tmax.jeus:jeus-maven-plugin:uninstall-app
    [INFO] Scanning for projects...
    [INFO]
    [INFO] ------------------< com.tmax.jeus:jeus-maven-plugin >-------------------
    [INFO] Building JEUS Maven Plugin 8.0.0.0
    [INFO] ----------------------------[ maven-plugin ]----------------------------
    [INFO]
    [INFO] --- jeus-maven-plugin:8.0.0.0:uninstall-app (default-cli) @ jeus-maven-plugin ---
    [INFO] jeus.home = D:\gitWorkspace\jeus21\target\jeus
    [INFO] jeusadmin.path = D:\gitWorkspace\jeus21\target\jeus\bin\jeusadmin.cmd
    [INFO] jeusadmin.one-step-execution-command = [uninstall-application servlet]
    [INFO] Attempting to connect to localhost:9736.
    [INFO] The connection has been established to JEUS Master Server [adminServer] in the domain [domain1].
    [INFO] uninstall the application for the application [servlet] succeeded. : Successfully deleted [servlet].
    [INFO] ------------------------------------------------------------------------
    [INFO] BUILD SUCCESS
    [INFO] ------------------------------------------------------------------------
    [INFO] Total time:  1.178 s
    [INFO] Finished at: 2022-08-30T08:32:19+09:00
    [INFO] ------------------------------------------------------------------------

1.2.10. jeusadmin

지정한 jeusadmin 명령어를 실행한다. 내부적으로는 콘솔 툴(jeusadmin)에서 제공하는 one-step execution 기능을 사용한다.

  • 사용법

    com.tmax.jeus:jeus-maven-plugin:jeusadmin
  • 매개변수

    매개변수 이름 프로퍼티 이름 타입 설명

    jeusHome

    jeus.home

    java.lang.String

    JEUS가 설치되어 있는 경로를 설정한다.

    (필수 입력항목)

    host

    jeus.server.host

    java.lang.String

    jeusadmin으로 접속할 서버의 주소이다.

    (필수 입력항목)

    port

    jeus.server.port

    java.lang.Integer

    jeusadmin으로 접속할 서버의 포트 번호이다. (기본값: 9736, 필수 입력항목)

    user

    jeus.user.name

    java.lang.String

    JEUS 사용자 이름을 설정한다. (필수 입력항목)

    password

    jeus.user.password

    java.lang.String

    JEUS 사용자 비밀번호를 설정한다.

    (필수 입력항목)

    args

    없음

    java.util.List

    명령어를 실행할 때 넘겨줄 인자값들을 설정한다. arg와 args 둘 다 설정하였을 경우 arg가 우선한다. pom.xml에 설정할 경우 사용하는 것을 권장한다.

    arg

    jeus.jeusadmin.command.arguments

    java.lang.String

    명령어를 실행할 때 넘겨줄 인자값들을 설정한다. arg와 args 둘 다 설정하였을 경우 arg가 우선한다.

    command

    jeus.jeusadmin.command

    java.lang.String

    실행할 jeusadmin 명령어 이름을 설정한다.

    (필수 입력항목)

  • 예제

    매개변수는 pom.xml에 설정하거나 command line에서 실행할 때 지정할 수 있다.

    다음은 pom.xml에 설정을 한 예제이며, 수행할 명령어는 server-info -server adminServer -state이다.

    <!-- JEUS Maven Plugin - jeusadmin -->
    <plugin>
      <groupId>com.tmax.jeus</groupId>
      <artifactId>jeus-maven-plugin</artifactId>
      <version>8.0.0.0</version>
      <configuration>
        <jeusHome>/home/user1/jeus</jeusHome>
        <host>host1</host>
        <port>9736</port>
        <user>administrator</user>
        <password>jeus</password>
        <command>server-info</command>
        <args>
          <param>-server adminServer</param>
          <param>-state</param>
        </args>
      </configuration>
    </plugin>

    goal을 실행하였을 경우 출력되는 결과는 다음과 같다.

    mvn com.tmax.jeus:jeus-maven-plugin:jeusadmin
    [INFO] Scanning for projects...
    [INFO]
    [INFO] ------------------< com.tmax.jeus:jeus-maven-plugin >-------------------
    [INFO] Building JEUS Maven Plugin 8.0.0.0
    [INFO] ----------------------------[ maven-plugin ]----------------------------
    [INFO]
    [INFO] --- jeus-maven-plugin:8.0.0.0:jeusadmin (default-cli) @ jeus-maven-plugin ---
    [INFO] jeus.home = D:\gitWorkspace\jeus21\target\jeus
    [INFO] jeusadmin.path = D:\gitWorkspace\jeus21\target\jeus\bin\jeusadmin.cmd
    [INFO] jeusadmin.one-step-execution-command = [server-info]
    [INFO] Attempting to connect to localhost:9736.
    [INFO] The connection has been established to JEUS Master Server [adminServer] in the domain [domain1].
    [INFO] Information about Domain (domain1)
    [INFO] ================================================================================
    [INFO] +--------+--------+-----+-----+-----+------------+--------+-----------+--------+
    [INFO] | Server | Status |Node | PID | Clu |   Latest   |  Need  |   Listen  |Running |
    [INFO] |        |        |Name |     |ster | Start Time |   to   |   Ports   |Engines |
    [INFO] |        |        |     |     |     | / Shutdown |Restart |           |        |
    [INFO] |        |        |     |     |     |    Time    |        |           |        |
    [INFO] +--------+--------+-----+-----+-----+------------+--------+-----------+--------+
    [INFO] | adminS | RUNNIN | nod | 153 | N/A | 2022-08-30 | false  | base-0.0. | jms,   |
    [INFO] |erver   |G(00:21 |e1   |076  |     | (화) 오전   |        |0.0:9736   |web, ejb|
    [INFO] |(*)     |:55)    |     |     |     |08:19:43 KST|        | http-serv |        |
    [INFO] |        |        |     |     |     |            |        |er-0.0.0.0 |        |
    [INFO] |        |        |     |     |     |            |        |:8088      |        |
    [INFO] +--------+--------+-----+-----+-----+------------+--------+-----------+--------+
    [INFO] | server1| FAILED | N/A | N/A | N/A | N/A        | N/A    | N/A       | N/A    |
    [INFO] |        |(00:21: |     |     |     |            |        |           |        |
    [INFO] |        |09)     |     |     |     |            |        |           |        |
    [INFO] +--------+--------+-----+-----+-----+------------+--------+-----------+--------+
    [INFO] | server2| SHUTDO | N/A | N/A | cds1| 2022-08-30 | N/A    | N/A       | N/A    |
    [INFO] |        |WN      |     |     |     | (화) 오전   |        |           |        |
    [INFO] |        |        |     |     |     |08:19:43 KST|        |           |        |
    [INFO] +--------+--------+-----+-----+-----+------------+--------+-----------+--------+
    [INFO] | server3| SHUTDO | N/A | N/A | cds1| 2022-08-30 | N/A    | N/A       | N/A    |
    [INFO] |        |WN      |     |     |     | (화) 오전   |        |           |        |
    [INFO] |        |        |     |     |     |08:19:43 KST|        |           |        |
    [INFO] +--------+--------+-----+-----+-----+------------+--------+-----------+--------+
    [INFO] ================================================================================
    [INFO]
    [INFO] ------------------------------------------------------------------------
    [INFO] BUILD SUCCESS
    [INFO] ------------------------------------------------------------------------
    [INFO] Total time:  1.236 s
    [INFO] Finished at: 2022-08-30T08:41:39+09:00
    [INFO] ------------------------------------------------------------------------