eclenhancer 명령
JPA(Java™ Persistence API) 애플리케이션에 대한 엔티티 인핸서 도구는 JPA 제공자가 엔티티의 상태를 관리하도록 지원하는 바이트코드를 엔티티 클래스 파일에 삽입합니다. 이 명령행 도구를 사용하여 WebSphere® Application Server에 대해 JPA(Java™ Persistence API) 2.1 스펙 제공자인 EclipseLink의 엔티티를 개선하십시오.
모든 엔티티 클래스의 상태를 관리하려면 애플리케이션 서버의 JPA에서 해당 엔티티 클래스가 확장되어야 합니다. 컨테이너 관리 환경에서는 컨테이너가 자동 확장을 제공합니다. Java SE 환경에서는 그럼에도 불구하고 CMP(Container Managed Persistence)가 없으며 테스트를 위해 애플리케이션 파일을 패키징하기 전에 이 명령을 자주 사용할 수 있습니다. JPA 엔티티를 작성한 후 JAR(Java archive) 파일을 애플리케이션에 대한 엔터프라이즈 아카이브(EAR) 파일로 패키징하기 전에 eclenhancer 도구를 실행하여 엔티티에 바이트 코드를 삽입할 수 있습니다.
구문
이 명령을 실행하기 전에 클래스 경로에 persistence.xml 파일이 있거나 -persistenceinfo 인수에서 해당 위치를 지정해야 합니다. profile_root 디렉토리의 bin 서브디렉토리에서 이 명령을 실행하십시오.
명령 구문은 다음과 같습니다.
![[AIX]](../images/aixlogo.gif)
![[HP-UX]](../images/hpux.gif)
![[Linux]](../images/linux.gif)
![[Solaris]](../images/solaris.gif)
![[z/OS]](../images/ngzos.gif)
eclenhancer.sh [arguments] <source> <target>
![[Windows]](../images/windows.gif)
eclenhancer.bat [arguments] <source> <target>
매개변수
- classpath <path>: 위빙할 Java 소스 파일의 위치(디렉토리 또는 JAR 파일)를 지정합니다. persistence.xml 파일이 이 위치에 없는 경우, -persistenceinfo 속성을 사용하여 persistence.xml의 위치를 지정해야 합니다.
- <source>: 위빙할 Java 소스 파일의 위치(디렉토리 또는 JAR 파일)를 지정합니다. persistence.xml 파일이 이 위치에 없는 경우 -persistenceinfo 속성을 사용하여 persistence.xml의 위치를 지정해야 합니다.
- <target>: 출력 위치(디렉토리 또는 JAR 파일)를 지정합니다.
사용법
eclenhancer 도구를 사용하려면 JPA 스펙에 엔티티를 정의해야 하며 엔티티를 컴파일해야 합니다. 엔티티를 JAR 파일로 패키징하기 전에 해당 엔티티에 대해 eclenhancer 도구를 실행할 수 있습니다. 엔티티가 이미 패키징된 경우 엔티티 클래스 파일을 추출하고 인핸서를 실행한 다음 JAR 파일을 다시 작성할 수 있습니다.
- 엔티티가 클래스 경로에 있는지 확인하십시오. 클래스 경로에 없는 경우 추가하십시오.
- eclenhancer 명령을 실행하십시오. profile_root/bin 디렉토리에 있습니다.
예제
JAR에 위치하는 엔티티를 개선하려면 다음을 수행하십시오.
![[AIX]](../images/aixlogo.gif)
![[HP-UX]](../images/hpux.gif)
![[Linux]](../images/linux.gif)
![[Solaris]](../images/solaris.gif)
![[z/OS]](../images/ngzos.gif)
$ cd build
/home/user/myproject/build $ ${profile_root}/bin/eclenhancer.sh -persistenceinfo
/home/user/myproject/build/myjar-containing-persistencexml.jar -classpath
/classpath1;/classpath2 /home/user/myproject/build/myjar-source.jar
/home/user/myproject/build/myjar-target.jar
![[Windows]](../images/windows.gif)
C:\myproject\build>%profile_root%\bin\eclenhancer.bat -persistenceinfo c:\myjar-
containing-persistencexml.jar -classpath c:\classpath1;c:\classpath2 c:\myjar-
source.jar c:\myjar-target.jar