6.3. 사용자 지정 모듈 생성
사용자 지정 정적 모듈을 추가하여 JBoss EAP에서 실행되는 배포에 리소스를 사용할 수 있도록 할 수 있습니다. 모듈을 수동으로 생성하거나 관리 CLI를 사용하여 생성할 수 있습니다.
모듈을 생성한 후에는 애플리케이션에서 해당 리소스 를 사용할 수 있어야 하는 경우 모듈을 종속성으로 추가해야 합니다.
수동으로 사용자 지정 모듈 생성
다음 단계를 사용하여 사용자 지정 모듈을 수동으로 생성할 수 있습니다.
EAP_HOME/modules/
디렉터리에 적절한 디렉터리 구조를 생성합니다.예: MySQL JDBC 드라이버 디렉터리 structure 생성
Copy to Clipboard Copied! Toggle word wrap Toggle overflow cd EAP_HOME/modules/ mkdir -p com/mysql/main
$ cd EAP_HOME/modules/ $ mkdir -p com/mysql/main
JAR 파일 또는 기타 필요한 리소스를
main/
하위 디렉터리에 복사합니다.예: MySQL JDBC 드라이버 JAR 복사
Copy to Clipboard Copied! Toggle word wrap Toggle overflow cp /path/to/mysql-connector-java-5.1.36-bin.jar EAP_HOME/modules/com/mysql/main/
$ cp /path/to/mysql-connector-java-5.1.36-bin.jar EAP_HOME/modules/com/mysql/main/
main/
하위 디렉터리에module.xml
파일을 생성하여 파일에 적절한 리소스 및 종속 항목을 지정합니다.예: MySQL JDBC Driver
module.xml
파일Copy to Clipboard Copied! Toggle word wrap Toggle overflow <?xml version="1.0" ?> <module xmlns="urn:jboss:module:1.1" name="com.mysql"> <resources> <resource-root path="mysql-connector-java-5.1.36-bin.jar"/> </resources> <dependencies> <module name="javax.api"/> <module name="javax.transaction.api"/> </dependencies> </module>
<?xml version="1.0" ?> <module xmlns="urn:jboss:module:1.1" name="com.mysql"> <resources> <resource-root path="mysql-connector-java-5.1.36-bin.jar"/> </resources> <dependencies> <module name="javax.api"/> <module name="javax.transaction.api"/> </dependencies> </module>
관리 CLI를 사용하여 사용자 지정 모듈 생성
모듈 add management CLI 명령을 사용하여 사용자 지정 모듈을
생성할 수 있습니다.
- JBoss EAP 서버를 시작합니다.
관리 CLI를 시작하지만
--connect
또는-c
인수를 사용하여 실행 중인 인스턴스에 연결하지 마십시오.Copy to Clipboard Copied! Toggle word wrap Toggle overflow EAP_HOME/bin/jboss-cli.sh
$ EAP_HOME/bin/jboss-cli.sh
모듈 추가
관리 CLI 명령을 사용하여 새 코어 모듈을 추가합니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow module add --name=MODULE_NAME --resources=PATH_TO_RESOURCE --dependencies=DEPENDENCIES
module add --name=MODULE_NAME --resources=PATH_TO_RESOURCE --dependencies=DEPENDENCIES
이 명령을 사용하여 모듈을 추가 및 제거하는 방법에 대한 자세한 내용은 module --help
를 실행합니다.
모듈을 종속성으로 추가
애플리케이션이 이 모듈의 리소스에 액세스하려면 모듈을 종속성으로 추가해야 합니다.
- 모든 애플리케이션에 모듈을 종속 항목으로 추가하는 방법은 글로벌 모듈 정의 섹션을 참조하십시오.
예를 들어 다음 단계에서는 여러 속성 파일이 포함된 JAR 파일을 모듈로 추가하고 글로벌 모듈을 정의하여 애플리케이션이 이러한 속성을 로드할 수 있도록 합니다.
JAR 파일을 코어 모듈로 추가합니다.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow module add --name=myprops --resources=/path/to/properties.jar
module add --name=myprops --resources=/path/to/properties.jar
모든 배포에서 사용할 수 있도록 이 모듈을 글로벌 모듈로 정의합니다.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow /subsystem=ee:list-add(name=global-modules,value={name=myprops})
/subsystem=ee:list-add(name=global-modules,value={name=myprops})
그런 다음 애플리케이션은 JAR에 포함된 속성 파일 중 하나에서 속성을 검색할 수 있습니다.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Thread.currentThread().getContextClassLoader().getResource("my.properties");
Thread.currentThread().getContextClassLoader().getResource("my.properties");