Amazon Q Developer를 사용하여 명령줄에서 변환 실행 - Amazon Q Developer

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

Amazon Q Developer를 사용하여 명령줄에서 변환 실행

Amazon Q Developer 명령줄 도구를 사용하여 명령줄에서 코드를 변환하려면 다음 단계를 완료하세요.

사전 조건

명령줄에서 변환을 시작하기 전에 다음 사전 조건을 충족해야 합니다.

1단계: 인증 방법 선택 및 권한 추가

IAM Identity Center를 인증하여 명령줄에서 변환을 실행할 수 있습니다. 적절한 권한이 있는지 확인합니다.

참고

명령줄에서 수행되는 변환에는 고객 관리형 키가 지원되지 않습니다.

권한 추가

인증에 사용하는 Amazon Q Developer 구독과 연결된 IAM 자격 증명에는 명령줄에서 변환을 수행할 수 있는 권한이 있어야 합니다. 계속하기 전에 IAM 자격 증명에에 정의된 권한이 있는지 확인합니다사용자가 명령줄에서 변환을 실행하도록 허용.

Amazon Q Developer 구독을 통해 IAM Identity Center로 인증

IAM Identity Center로 인증하려면 관리자가 Amazon Q Developer Pro를 인력 사용자로 구독해야 하며 구독을 통해 인증할 시작 URL을 제공해야 합니다. 사용자 또는 관리자는 Amazon Q Developer 콘솔에서 시작 URL을 찾을 수 있습니다. 자세한 내용은 단원을 참조하십시오Amazon Q Developer에서 사용할 시작 URL 찾기.

필요한 권한을 추가하려면 섹션을 참조하세요권한 추가.

에서 시작 URL을 제공합니다4단계: 구성 및 인증.

2단계: 도구 설치

  1. 변환을 위한 Amazon Q 명령줄 도구를 다운로드하고 압축을 풉니다.

    명령줄 도구의 이전 버전을 다운로드하려면 섹션을 참조하세요버전 기록.

  2. 도구를 설치하려면 Python에서 가상 환경을 설정하는 것이 좋습니다. 가상 환경을 생성하려면 도구를 설치하고 실행할 디렉터리에서 터미널 창을 엽니다.

    python -m venv qct-cli
  3. 가상 환경을 활성화하려면 다음을 실행합니다.

    source qct-cli/bin/activate
  4. 명령줄에 도구를 설치하려면 시스템 아키텍처에 따라 도구의 압축을 푼 경로로 다음 명령을 실행합니다.

    Linux_aarch64
    pip install <path/to/unzipped-tool>/Linux_aarch64/amzn_qct_cli-1.2.0-py3-none-any.whl
    Linux_x86_64
    pip install <path/to/unzipped-tool>/Linux_x86_64/amzn_qct_cli-1.2.0-py3-none-any.whl
    참고

    변환에 이전 버전의 명령줄 도구를 사용하는 경우를 다운로드1.2.0버전으로 바꿉니다.

  5. 도구가 설치되었는지 확인하려면 다음을 실행합니다.

    which qct

3단계: 종속성 업그레이드 파일 생성(선택 사항)

Amazon Q에 프로젝트의 종속성과 변환 중에 업그레이드할 버전을 나열하는 YAML 파일인 종속성 업그레이드 파일을 제공할 수 있습니다. 종속성 업그레이드 파일을 제공하여 Amazon Q가 업그레이드할 때 모르는 타사 종속성을 지정할 수 있습니다.

자사 종속성은 조직이 유지 관리하고 로컬 또는 조직의 프라이빗 네트워크에서만 사용할 수 있는 라이브러리, 플러그인 및 프레임워크를 나타냅니다. Amazon Q는 로컬 환경에서 빌드를 수행할 때 자사 종속성에 액세스할 수 있습니다. 자세한 내용은 로컬 환경에서 코드 빌드 단원을 참조하십시오. 타사 종속성은 조직에 고유하지 않은 공개적으로 사용 가능한 또는 오픈 소스 종속성입니다.

YAML 파일에서 업그레이드하려는 자사 종속성을 지정할 수 있으며, Amazon Q는 JDK 업그레이드 중에 종속성을 업그레이드합니다(예: Java 8에서 17로). 최초 JDK 업그레이드 후 별도의 변환(17~17 또는 21~21)을 시작하여 타사 종속성을 업그레이드할 수 있습니다.

Amazon Q가 최소 JDK 업그레이드를 수행하면 별도의 변환을 시작하여 모든 타사 종속성을 업그레이드할 수 있습니다. 또는 타사 종속성과 해당 버전을 YAML 파일에 지정하여 라이브러리 업그레이드 변환 중에만 해당 종속성을 업그레이드할 수 있습니다.

Amazon Q는 변환 중에 종속성 업그레이드 파일을 제공하라는 메시지를 표시합니다. 제공하려면 먼저 파일을 올바르게 구성했는지 확인합니다. YAML 파일에는 다음 필드가 필요합니다.

  • name - 종속성 업그레이드 파일의 이름입니다.

  • description(선택 사항) - 종속성 업그레이드 파일 및 변환에 대한 설명입니다.

  • dependencyManagement - 업그레이드할 종속성 및 플러그인 목록을 포함합니다.

  • 종속성 - 업그레이드할 라이브러리의 이름과 버전을 포함합니다.

  • 플러그인 - 업그레이드할 플러그인의 이름과 버전을 포함합니다.

  • 식별자 - 라이브러리, 플러그인 또는 기타 종속성의 이름입니다.

  • targetVersion - 업그레이드할 종속성의 버전입니다.

  • versionProperty(선택 사항) - 애플리케이션 pom.xml 파일의 properties 태그로 설정된 정의 중인 종속성의 버전입니다.

  • originType - 종속성이 FIRST_PARTY 또는 THIRD_PARTY에 의해 지정된 퍼스트 또는 서드 파티인지 여부입니다.

다음은 종속성 업그레이드 YAML 파일의 예와 Amazon Q가 구문 분석하는 데 필요한 구성입니다.

name: dependency-upgrade description: "Custom dependency version management for Java migration from JDK 8/11/17 to JDK 17/21" dependencyManagement: dependencies: - identifier: "com.example:library1" targetVersion: "2.1.0" versionProperty: "library1.version" # Optional originType: "FIRST_PARTY" - identifier: "com.example:library2" targetVersion: "3.0.0" originType: "THIRD_PARTY" plugins: - identifier: "com.example.plugin" targetVersion: "1.2.0" versionProperty: "plugin.version" # Optional originType: "THIRD_PARTY"

4단계: 구성 및 인증

변환을 시작하려면 먼저 IAM Identity Center로 인증하고 변환에 대한 구성 세부 정보를 제공해야 합니다.

  1. 변환 구성 프로세스를 시작하려면 다음 명령을 실행합니다.

    qct configure
  2. 지원되는 각 Java 버전에 대해 JDK 경로를 입력하라는 메시지가 표시됩니다. 대상 버전이 아닌 Java 애플리케이션의 소스 버전의 JDK 경로만 지정하면 됩니다.

  3. 그런 다음 IAM Identity Center로 인증하려면 Amazon Q Developer Pro 구독 프로필의 시작 URL을 입력하라는 메시지가 표시됩니다.

    그런 다음 구독한 AWS 리전 을 형식으로 입력합니다us-east-1. 지원되는 리전 목록은 지원되는 리전 섹션을 참조하세요. 리전 코드 목록은 AWS 일반 참조 가이드리전 엔드포인트를 참조하세요.

  4. 구성 기본 설정은 configuration.ini 파일에 저장됩니다.

5단계: 변환 실행

수행 중인 변환 유형을 선택하여 필요한 구성 및 명령을 확인합니다.

참고

클라이언트 측 빌드에는 안정적인 네트워크 연결이 필요하므로 코드 변환 중에 로컬 시스템을 끄거나 닫지 마십시오.

Java upgrade

변환 계획 수정

Java 버전 업그레이드 중에 Amazon Q는 변환이 시작되기 전에 검토할 수 있는 변환 계획을 생성합니다. 계획에 대해 다음과 같은 변경을 요청할 수 있습니다.

  • 계획에 포함된 목록에서 Amazon Q가 업그레이드하는 라이브러리

    • 프롬프트 예제:

      • <dependency1>, <dependency2> 및 <dependency5>만 업그레이드

      • <dependency1> 또는 <dependency2>를 업그레이드하지 마십시오.

  • 라이브러리를 업그레이드할 대상 버전

    • 프롬프트 예제:

      • <버전> 대신 <종속성>을이 버전으로 업그레이드

  • Amazon Q가 수행해야 하는 단계

    • 프롬프트 예제:

      • 1~7단계만 완료

      • 5~9단계 실행 안 함

  • 업그레이드할 추가 종속성 추가(최신 JDK 버전으로 업그레이드할 때 옵션만 해당)

    • 프롬프트 예제:

      • 또한 <dependency1>을 <version2>로 업그레이드

Java 코드 업그레이드
  1. 다음 명령을 실행하여 Java 업그레이드를 위한 변환을 시작합니다. <path-to-folder>를 변환하려는 코드의 폴더 경로로 바꾸고를 JAVA_17 또는 <your-target-java-version>로 바꿉니다JAVA_21.

    qct transform --source_folder <path-to-folder> --target_version <your-target-java-version>

    추가 명령 옵션:

    • 업그레이드할 종속성을 지정하는 경우 종속성 업그레이드 파일의 경로와 함께 --dependency_upgrade_file 옵션을 추가합니다.

    • 변환 계획을 검토하거나 업데이트하지 않으려면 명령에 --no-interactive 플래그를 추가합니다. Amazon Q는 계획에 대한 피드백을 요청하지 않으며 변경을 요청할 기회가 없습니다.

  2. 변환이 시작되기 전에 Maven 버전이 확인됩니다. 지원되는 최소 버전이 있는 경우 다음 출력이 표시됩니다.

    Running command: mvn --version at: path/to/current/directory Your Maven version is supported for transformations.

    지원되는 Maven 버전이 없는 경우 계속 진행하려면 업데이트해야 합니다. 자세한 내용은 사전 조건 단원을 참조하십시오.

  3. --no-interactive 플래그를 추가하지 않은 경우 Amazon Q는 변환 계획에 대한 피드백을 제공하라는 메시지를 표시합니다. 영어 자연어로 변경하려는 사항을 설명할 수 있으며, Amazon Q는 요청한 변경 사항을 지원할 수 있는 경우 계획을 업데이트합니다.

  4. Amazon Q가 변환을 시작합니다. 변환 전반에 걸쳐 상태 업데이트를 출력합니다. 완료되면 Amazon Q는 변환 결과, 로그 및 구성 파일이 출력되는 경로를 제공합니다.

    업그레이드된 코드는 생성된 새 브랜치 Amazon Q에 커밋됩니다. Amazon Q는 실행 시 선택한 항목에 따라 하나 이상의 커밋으로 코드를 커밋합니다qct configure.

  5. Java 버전을 업그레이드한 후 다른 변환을 실행하는 경우 첫 번째 변환에서 변경 사항을 커밋한 동일한 브랜치에서 두 번째 변환을 시작합니다.

SQL conversion

시작하기 전에 Amazon Q Developer를 사용하여 Java 애플리케이션의 임베디드 SQL 변환를 읽고 이러한 유형의 변환에 대한 사전 조건을 이해해야 합니다.

  1. 임베디드 SQL을 변환하려면 먼저 AWS DMS Schema Conversion에서 스키마 메타데이터 파일의 경로가 포함된 YAML 파일을 생성해야 합니다.

    다음은 파일의 필수 형식입니다.

    schema_conv_metadata_path: <path-to-metadata-zip-file>
  2. 다음 명령을 실행하여 SQL 변환에 대한 변환을 시작합니다. <path-to-folder>를 변환하려는 코드의 폴더 경로로 바꾸고를 1단계에서 생성한 YAML 파일의 경로<path-to-sql-config-file>로 바꿉니다.

    qct transform --source_folder <path-to-folder> --sql_conversion_config_file <path-to-sql-config-file>
  3. Amazon Q가 스키마 메타데이터 파일에서 여러 스키마를 찾으면 변환을 중지하고 감지된 스키마 목록을 제공합니다. SQL 변환에 사용할 스키마를 선택한 다음 schema: <schema-name> YAML 파일에 새 필드를 추가합니다.

  4. Amazon Q가 변환을 시작합니다. 변환 전반에 걸쳐 상태 업데이트를 출력합니다. 완료되면 Amazon Q는 변환 결과, 로그 및 구성 파일이 출력되는 경로를 제공합니다.

    업그레이드된 코드는 생성된 새 브랜치 Amazon Q에 커밋됩니다.

변환 일시 중지 또는 취소

현재 변환 작업을 일시 중지하거나 취소하도록 선택할 수 있습니다. 다시 시작하기 전에 최대 12시간 동안 변환 작업을 일시 중지할 수 있습니다.

코드 변환 작업을 일시 중지하거나 취소하려면
  1. CLI 터미널에서 키보드에서 Ctrl+C를 누릅니다.

  2. 트랜스포메이션을 일시 중지할지 취소할지 선택합니다.

    • 코드 변환 작업을 푸시1하려면를 입력합니다. 다음 QCT 명령을 사용하여 12시간 이내에 작업을 재개하여 코드 변환을 계속할 수 있습니다`qct transform --source_folder=≤/Path/Given/Originally/To/QCT>`.

    • 코드 트랜스포메이션 작업을 취소2하려면를 입력합니다.