Amazon Q Developer Agent for code transformation 작동 방식 - Amazon Q 개발자

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

Amazon Q Developer Agent for code transformation 작동 방식

코드를 변환하기 위해 는 프로젝트의 코드 언어 버전을 업그레이드하는 데 사용하는 변환 계획을 Amazon Q Developer Agent for code transformation 생성합니다. 코드를 변환한 후에는 변경 내용을 수락하기 전에 검토할 수 있도록 변환 요약과 파일 비교가 제공됩니다. 다음 섹션에서는 Amazon Q가 변환을 수행하는 방법에 대한 자세한 내용을 제공합니다.

코드 구축 및 변환 계획 수립

코드 변환을 시작하기 위해 Amazon Q는 프로젝트를 로컬로 빌드하고 소스 코드, 프로젝트 종속성 및 빌드 로그를 포함하는 빌드 아티팩트를 생성합니다.

빌드 아티팩트를 생성한 후 Amazon Q는 안전한 빌드 환경에서 코드를 빌드하고 업그레이드 중인 프로젝트 또는 모듈에 맞게 사용자 지정된 변환 계획을 생성합니다. 변환 계획에는 새 종속성 버전, 주요 코드 변경, 더 이상 사용되지 않는 코드의 대체 제안 등 Amazon Q에서 시도할 구체적인 변경 사항이 요약되어 있습니다. 이러한 변경은 코드의 예비 빌드를 기반으로 하며 변환 과정에서 변경될 수 있습니다.

코드 변환

코드를 변환하기 위해 Amazon Q는 변환 계획의 제안된 변경 사항을 기반으로 코드 업그레이드를 시도합니다. 변경 시 소스 코드에서 기존 단위 테스트를 다시 빌드하고 실행하여 발생한 오류를 반복적으로 수정합니다.

Amazon Q는 코드를 업그레이드할 때 다음과 같은 변경을 시도합니다.

  • 인기 있는 라이브러리 및 프레임워크를 Java 17과 호환되는 버전으로 업그레이드하십시오. 여기에는 스프링, 스프링 부트, Junit, JakartaEE, Mockito, Hibernate 및 Log4j를 사용 가능한 최신 메이저 버전으로 업데이트하는 것이 포함됩니다.

  • Java 17 권장 사항에 따라 더 이상 사용되지 않는 코드 구성 요소를 업데이트하십시오.

변환 요약 검토 및 변경 사항 적용

변환이 완료되면 Amazon Q는 전체 프로젝트가 업그레이드되었는지 여부를 나타내는 최종 빌드의 상태를 포함하여 변경 사항에 대한 세부 정보가 포함된 변환 요약을 제공합니다. 또한 빌드 로그 요약을 보고 Amazon Q가 업그레이드된 버전에서 코드를 빌드하지 못하게 한 문제를 파악할 수 있습니다.

변환 요약에는 변환 계획에서 제안한 변경 사항과 Amazon Q가 코드 업그레이드를 위해 최종적으로 적용한 변경 사항 간의 차이점, 그리고 원래 계획에 없었던 추가 변경 사항이 추가로 포함됩니다.

변환 요약을 검토한 후 Amazon Q에서 제안하는 변경 내용을 파일 차이 보기에서 확인할 수 있습니다. Amazon Q에서 제안하는 코드 변경은 변경을 수락하기 전까지는 현재 프로젝트 파일에 영향을 주지 않습니다. 변환된 코드는 변환이 완료된 후 최대 24시간까지 사용할 수 있습니다.

부분적으로 성공한 변환

코드베이스의 복잡성과 세부 사항에 따라 변환이 부분적으로 성공한 경우가 있을 수 있습니다. 즉, Amazon Q는 프로젝트의 특정 파일 또는 코드 영역만 변환할 수 있었습니다. 이 경우 업데이트된 언어 버전으로 빌드할 수 있도록 나머지 코드를 수동으로 업데이트해야 합니다.

코드의 나머지 부분을 변환하는 데 도움이 되도록 에서 Amazon Q 채팅을 사용할 수 IDE 있습니다. Amazon Q에 부분적으로 업데이트된 파일을 검토하고 컴파일 오류와 같은 문제를 해결하기 위한 새 코드를 제공하도록 요청할 수 있습니다. 또한 /dev및 와 @workspace같은 기능을 사용하여 프로젝트의 더 많은 부분을 컨텍스트로 포함하고 한 번에 여러 파일에 대한 제안을 받을 수 있습니다.