Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Bagaimana Pengembang Amazon Q mengubah kode untuk peningkatan bahasa Java
Untuk mengubah kode Anda, Amazon Q Developer membuat rencana transformasi yang digunakan untuk meningkatkan versi bahasa kode proyek Anda. Setelah mengubah kode Anda, ini memberikan ringkasan transformasi dan perbedaan file bagi Anda untuk meninjau perubahan sebelum menerimanya. Karena Amazon Q Developer membuat perubahan minimal yang diperlukan untuk membuat kode yang ditingkatkan kompatibel dengan JDK target, transformasi tambahan diperlukan untuk meningkatkan pustaka dan dependensi proyek Anda. Bagian berikut memberikan rincian lebih lanjut tentang bagaimana Amazon Q melakukan transformasi.
Membangun kode Anda dan membuat rencana transformasi
Untuk mulai mengubah kode Anda, Amazon Q membangun proyek Anda secara lokal dan menghasilkan artefak build yang berisi kode sumber, dependensi proyek, dan log build.
Setelah membuat artefak build, Amazon Q membuat kode Anda di lingkungan build yang aman dan membuat rencana transformasi, yang disesuaikan dengan proyek atau modul yang Anda upgrade. Rencana transformasi menguraikan perubahan spesifik yang akan dilakukan Amazon Q, termasuk versi dependensi baru, perubahan kode utama, dan penggantian yang disarankan untuk kode yang tidak digunakan lagi. Perubahan ini didasarkan pada pembuatan awal kode Anda, dan mungkin berubah selama transformasi.
Mengubah kode Anda
Untuk mengubah kode Anda, Amazon Q mencoba memutakhirkan kode Anda ke versi Java target berdasarkan perubahan yang diusulkan dalam rencana transformasi. Saat membuat perubahan, ia membangun kembali dan menjalankan pengujian unit yang ada di kode sumber Anda untuk memperbaiki kesalahan yang ditemui secara berulang. Upgrade JDK dapat dilakukan dari versi kode sumber berikut ke versi target:
-
Java 8 hingga 17
-
Java 8 hingga 21
-
Jawa 11 hingga 17
-
Java 11 hingga 21
-
Java 17 hingga 21
Amazon Q membuat perubahan minimal yang diperlukan untuk membuat kode Anda kompatibel dengan versi Java target. Setelah berhasil meningkatkan ke Java 17 atau 21. Setelah Amazon Q melakukan upgrade JDK minimum, Anda dapat memulai transformasi terpisah untuk memutakhirkan semua dependensi pihak ketiga. Atau, Anda dapat menentukan dependensi pihak ketiga dan versinya dalam file YAMAL untuk hanya memutakhirkan dependensi tersebut selama transformasi pemutakhiran perpustakaan.
Amazon Q mencoba membuat perubahan berikut saat memutakhirkan kode Anda:
-
Perbarui komponen kode usang sesuai dengan rekomendasi versi Java target
-
Tingkatkan pustaka dan kerangka kerja populer ke versi yang kompatibel dengan versi Java target. Ini termasuk memperbarui pustaka dan kerangka kerja berikut ke versi utama terbaru yang tersedia:
-
Apache Commons IO
-
Apache HttpClient
-
bc-fips
-
Mentimun-JVM
-
Hibernasi
-
jackson-annotations
-
JakartaEE
-
Javax
-
javax.servlet
-
jaxb-api
-
jaxb-impl
-
jaxen
-
jcl-over-slf4j
-
json sederhana
-
jsr305
-
junit
-
junit-jupiter-api
-
Log4j
-
Mikronaut
-
Mockito
-
mockito-inti
-
Okio
-
PowerMockito
-
Quarkus
-
slf4j
-
slf4j-api
-
Sepatu Musim Semi
-
Kerangka Musim Semi
-
Keamanan Musim Semi
-
Kesombongan
-
testng
-
catatan
Jangan mematikan atau menutup mesin lokal Anda selama transformasi kode karena build sisi klien memerlukan koneksi jaringan yang stabil.
Membangun kode di lingkungan lokal Anda
Selama transformasi, Amazon Q melakukan build verifikasi di lingkungan lokal Anda. Amazon Q mengubah kode Anda di sisi server dalam beberapa langkah. Setelah setiap langkah, Amazon Q mengirimkan kode ke lingkungan lokal Anda untuk membangun dan menguji perubahan yang dibuatnya. Kode kemudian dikirim kembali ke sisi server untuk melanjutkan transformasi.
Build di lingkungan lokal Anda membantu memverifikasi kode yang diubah dengan mengizinkan Amazon Q menjalankan pengujian yang memerlukan akses ke sumber daya pribadi. Untuk meminimalkan risiko keamanan yang terkait dengan pembuatan kode yang dihasilkan AI di lingkungan lokal Anda, Amazon Q meninjau dan memperbarui kode yang dihasilkannya untuk mengatasi masalah keamanan.
Meninjau ringkasan transformasi dan menerima perubahan
Setelah transformasi selesai, Amazon Q memberikan ringkasan transformasi dengan detail tentang perubahan yang dibuat, termasuk status build akhir yang menunjukkan apakah seluruh proyek Anda telah ditingkatkan. Anda juga dapat melihat ringkasan log build untuk memahami masalah apa pun yang mencegah Amazon Q membuat kode Anda dalam versi yang ditingkatkan.
Ringkasan transformasi juga mencakup perbedaan antara perubahan yang diusulkan dalam rencana transformasi dan perubahan yang akhirnya dibuat Amazon Q untuk meningkatkan kode Anda, dan perubahan tambahan apa pun yang tidak ada dalam paket awal.
Setelah meninjau ringkasan transformasi, Anda dapat melihat perubahan yang diusulkan Amazon Q dalam tampilan diff file. Perubahan kode apa pun yang disarankan Amazon Q tidak akan memengaruhi file proyek Anda saat ini hingga Anda menerima perubahan tersebut. Kode yang diubah tersedia hingga 30 hari setelah transformasi selesai.
Menyelesaikan transformasi yang berhasil sebagian
Bergantung pada kompleksitas dan spesifikasi basis kode Anda, mungkin ada contoh di mana transformasi sebagian berhasil. Ini berarti Amazon Q hanya dapat mengubah file atau area kode tertentu dalam proyek Anda. Dalam hal ini, Anda harus memperbarui kode yang tersisa secara manual agar proyek Anda dapat dibangun dalam versi bahasa yang diperbarui.
Untuk membantu mengubah sisa kode Anda, Anda dapat menggunakan obrolan Amazon Q di IDE. Anda dapat meminta Amazon Q untuk meninjau file yang diperbarui sebagian dan memberikan kode baru untuk mengatasi masalah, seperti kesalahan kompilasi. Anda juga dapat menggunakan fitur seperti /devdan @workspaceuntuk memasukkan lebih banyak proyek Anda sebagai konteks dan mendapatkan saran untuk beberapa file sekaligus.