Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Memecahkan masalah dengan transformasi Java
Informasi berikut dapat membantu Anda memecahkan masalah umum saat mengubah aplikasi Java dengan Amazon Q Developer.
Topik
Mengapa Amazon Q tidak dapat mengunggah proyek saya?
Jika proyek Anda gagal diunggah, kemungkinan karena salah satu masalah berikut. Lihat topik yang sesuai dengan kesalahan yang Anda lihat dari Amazon Q.
Kurangi ukuran proyek
Untuk mengubah kode Anda, Amazon Q menghasilkan artefak proyek, yang mencakup kode sumber, dependensi proyek, dan log build. Ukuran artefak proyek maksimum untuk pekerjaan transformasi adalah 2 GB. Jika Anda mendapatkan kesalahan terkait dengan ukuran artefak proyek, Anda harus mengurangi ukuran proyek Anda atau mencoba mengubah proyek yang lebih kecil. Anda dapat melihat ukuran file artefak proyek Anda di log transformasi kode. Untuk informasi selengkapnya, lihat Bagaimana cara mengakses log transformasi kode?
Konfigurasikan pengaturan proxy di IDE Anda
Untuk mengubah kode Anda, Amazon Q mengunggah artefak proyek Anda ke bucket Amazon S3 milik layanan. Bagian dari proses upload melibatkan penggunaan sertifikat SSL atau TLS untuk menjalin komunikasi antara Amazon S3 dan IDE Anda. Jika Anda menggunakan server proxy, sertifikat SSL atau TLS yang digunakan oleh server proxy Anda harus dipercaya, jika tidak Amazon Q tidak dapat mengunggah proyek Anda.
Jika Anda menerima kesalahan terkait proxy atau sertifikat, Anda mungkin perlu mengonfigurasi IDE atau sistem operasi untuk mempercayai sertifikat atau memperbarui pengaturan proxy lainnya.
catatan
Anda mungkin juga mengalami masalah yang tidak terkait dengan sertifikat jika Anda berada di belakang server proxy atau firewall organisasi Anda. Jika Anda menyelesaikan prosedur berikut untuk mengonfigurasi sertifikat dan masih mengalami masalah, hubungi administrator jaringan untuk memastikan Anda diizinkan berkomunikasi dengan Amazon S3 dari IDE Anda. Untuk informasi selengkapnya, lihat Izinkan akses ke Amazon S3.
Konfigurasikan sertifikat di JetBrains
Untuk mengonfigurasi JetBrains IDE Java Runtime Environment (JRE) agar mempercayai sertifikat SSL atau TLS yang digunakan oleh server proxy Anda, Anda harus mengimpor sertifikat SSL atau TLS ke file di JRE. cacerts
cacerts
File ini adalah file yang berisi sertifikat root tepercaya untuk koneksi aman seperti HTTPS dan SSL, dan itu adalah bagian dari pengaturan keamanan JRE. Untuk mengimpor sertifikat, selesaikan prosedur berikut.
catatan
Sebaiknya buat cadangan cacerts
file sebelum memodifikasinya, karena kesalahan apa pun dapat menyebabkan masalah dengan koneksi aman.
-
Tentukan jalur ke
cacerts
file di JRE Anda. Jalurcacerts
file di JRE internal yang dikirimkan bersama JetBrains IDE Anda bergantung pada sistem operasi dan versi JetBrains IDE yang Anda gunakan.Berikut ini adalah contoh jalur ke
cacerts
file dalam sistem operasi umum. Pilih sistem operasi Anda untuk melihat contoh.catatan
<JetBrains Installation Folder>
mengacu pada direktori tempat JetBrains produk diinstal. Direktori ini biasanya dipilih selama proses instalasi.jbr
Folder mewakili JRE yang dibundel JetBrains IDEs, yang merupakan versi spesifik dari JRE yang disesuaikan untuk digunakan. JetBrains IDEs -
Tentukan sertifikat yang perlu Anda impor ke
cacerts
file. File sertifikat biasanya memiliki.cer
,.crt
, atau ekstensi.der
file. Jika Anda tidak yakin sertifikat mana yang perlu Anda tambahkan, hubungi administrator jaringan Anda. -
Impor sertifikat ke
cacerts
keystore. Anda dapat melakukan ini dengankeytool
perintah Java.-
Buka prompt perintah dan masukkan perintah berikut:
keytool -import -alias <alias> -file <certificate_file> -keystore <path_to_cacerts>
-
Untuk
<alias>
, Anda dapat menambahkan nama untuk sertifikat yang Anda impor untuk merujuknya nanti. Opsi ini opsional. -
Untuk
<certificate_file>
, tentukan jalur ke sertifikat yang Anda impor. Ini harus menjadi jalur ke.cer
,.crt
, atau.der
file yang berisi sertifikat. -
Untuk
<path_to_cacerts>
, tentukan jalur ke filecacerts
keystore yang Anda simpan di langkah 1. Ini adalah file tempat Anda mengimpor sertifikat.
Misalnya, jika Anda ingin mengimpor sertifikat bernama
my_certificate.cer
kecacerts
keystore JRE yang dibundel IntelliJ IDEA di Windows, dan Anda ingin memberikan aliasmyalias
ke sertifikat, perintahnya mungkin:keytool -import -alias myalias -file my_certificate.cer -keystore "C:\Program Files\JetBrains\IntelliJ IDEA 2022.3.2\jbr\bin\cacerts"
-
-
Selama proses impor, Anda akan diminta untuk memasukkan kata sandi keystore. Kata sandi default untuk
cacerts
keystore adalahchangeit
. -
Setelah menjalankan perintah, Anda akan diminta untuk mempercayai sertifikat. Untuk mengonfirmasi sertifikat dipercaya dan menyelesaikan impor, masukkan
yes
. -
Anda mungkin juga perlu menambahkan sertifikat ke IDE itu sendiri, selain JRE. Untuk informasi selengkapnya, lihat Sertifikat Server
dalam JetBrains dokumentasi.
Konfigurasikan sertifikat di Visual Studio Code
Visual Studio CodeUntuk mengonfigurasi agar mempercayai sertifikat SSL atau TLS yang digunakan oleh server proxy Anda, pastikan Anda telah mengonfigurasi pengaturan proxy berikut untuk sistem operasi Anda.
Konfigurasikan pengaturan proxy berikut untuk Visual Studio Code di macOS.
Tambahkan sertifikat ke gantungan kunci macOS Anda
Jika Anda belum melakukannya, Anda harus menambahkan sertifikat yang digunakan oleh server proxy Anda ke macOS gantungan kunci Anda. Untuk informasi tentang menambahkan sertifikat ke gantungan kunci Anda, lihat Menambahkan sertifikat ke gantungan kunci menggunakan Akses Rantai Kunci di Mac di Panduan Pengguna Akses
Instal VSCode ekstensi Mac CA
VSCode Ekstensi Mac CA
Untuk menginstal ekstensi:
-
Cari
mac-ca-vscode
di panel VS Code ekstensi, dan pilih Instal. -
Mulai ulang VS Code.
Perbarui pengaturan proxy VS Code di macOS
Perbarui pengaturan berikut untuk memastikan VS Code dikonfigurasi dengan benar untuk proxy Anda.
-
Buka pengaturan diVS Code.
-
Masukkan
proxy
ke bilah pencarian. -
Di bidang Http: Proxy, tambahkan URL proxy Anda.
-
Batalkan pilihan Http: Proxy SSL Ketat.
-
Dalam daftar dropdown Http: Proxy Support, pilih.
-
Di bilah pencarian pengaturan, masukkan
http.experimental.systemCertificatesV2
. Pilih Http › Eksperimental: Sertifikat Sistem V2.
Konfigurasikan pengaturan proxy berikut untuk Visual Studio Code di Windows.
Tambahkan sertifikat sebagai sertifikat root tepercaya di Windows
Jika Anda belum melakukannya, Anda harus menambahkan sertifikat yang digunakan oleh server proxy Anda ke toko Otoritas Sertifikasi Root Tepercaya Anda di Windows. Untuk menambahkan sertifikat, selesaikan prosedur berikut:
-
Buka alat pencarian atau jendela perintah Jalankan.
-
Masukkan yang berikut ini untuk membuka alat Certificate Manager:
certmgr.msc
-
Pilih toko Otoritas Sertifikasi Root Tepercaya.
-
Klik kanan Sertifikat, pilih Semua Tugas, lalu pilih Impor... .
-
Ikuti petunjuk yang diberikan untuk mengimpor sertifikat proxy Anda.
-
Setelah Anda mengimpor sertifikat, konfirmasikan sertifikat telah ditambahkan.
Di toko Otoritas Sertifikasi Root Tepercaya, klik dua kali Sertifikat. Klik kanan sertifikat yang Anda tambahkan dan pilih Properties. Di bawah tujuan Sertifikat, opsi Aktifkan semua tujuan untuk sertifikat ini harus dipilih.
Instal ekstensi Win-CA VSCode
VSCode Ekstensi Win-CA memungkinkan
Untuk menginstal ekstensi:
-
Cari
win-ca
di panel VS Code pengaturan. -
Dalam daftar dropdown Inject, pilih append.
Perbarui pengaturan proxy VS Code di Windows
Perbarui pengaturan berikut untuk memastikan VS Code dikonfigurasi dengan benar untuk proxy Anda.
-
Buka pengaturan diVS Code.
-
Masukkan
proxy
ke bilah pencarian. -
Di bidang Http: Proxy, tambahkan URL proxy Anda.
-
Batalkan pilihan Http: Proxy SSL Ketat.
-
Dalam daftar dropdown Http: Proxy Support, pilih.
-
Di bilah pencarian pengaturan, masukkan
http.experimental.systemCertificatesV2
. Pilih Http › Eksperimental: Sertifikat Sistem V2. -
Mulai ulang VS Code.
Izinkan akses ke Amazon S3
Selama transformasi, Amazon Q mengunggah kode Anda ke bucket Amazon S3 milik layanan. Jika jaringan atau organisasi Anda belum mengonfigurasi akses ke Amazon S3, Amazon Q tidak dapat mengunggah proyek Anda.
Untuk memastikan Amazon Q dapat mengunggah proyek Anda, pastikan konfigurasi proxy dan komponen jaringan lainnya, seperti kebijakan Pencegahan Hilang Data (DLP), dikonfigurasi untuk mengizinkan akses ke Amazon S3. Anda mungkin juga perlu mengizinkan daftar bucket Amazon S3 tempat Amazon Q mengunggah proyek Anda. Untuk informasi selengkapnya, lihat Bucket Amazon S3 URLs dan ARNs daftar yang diizinkan.
Jika Anda mengubah proyek besar, kebijakan DLP atau komponen jaringan lainnya dapat menyebabkan penundaan dan mencegah unggahan berhasil jika tidak dikonfigurasi untuk mengizinkan bucket Amazon S3. Jika Anda memilih untuk tidak mengizinkan daftar bucket, Anda mungkin perlu mengubah proyek yang lebih kecil sehingga Amazon Q dapat mengunggahnya.
Mengapa Maven perintah saya gagal?
Berikut ini adalah masalah Maven konfigurasi yang mungkin Anda lihat di JetBrains dan Visual Studio Code IDEs. Jika Anda mengatasi masalah dan masih melihat Maven kesalahan, mungkin ada masalah dengan proyek Anda. Gunakan informasi di log kesalahan untuk mengatasi masalah apa pun dengan proyek Anda, lalu coba ubah proyek Anda lagi.
Perbarui Maven konfigurasi di JetBrains
Jika transformasi gagal JetBrains karena masalah Maven perintah, log kesalahan muncul di tab Jalankan. Gunakan informasi di log untuk mengatasi masalah ini. Berikut adalah beberapa masalah yang mungkin perlu Anda atasi:
-
Pastikan jalur Maven rumah Anda diatur ke Bundled. Buka Pengaturan, lalu perluas bagian Build, Execution, Deployment. Perluas bagian Build Tools dan kemudian perluas Maven. Dalam daftar dropdown jalur rumah Maven, pilih Dibundel.
-
Pastikan bahwa lingkungan Java runtime (JRE) menggunakan JDK proyek Anda. Buka Pengaturan, lalu perluas bagian Build, Execution, Deployment. Perluas Mavendan pilih Runner. Dalam daftar dropdown JRE, pilih Use Project JDK.
-
Pastikan itu Maven diaktifkan. Buka Pengaturan dan pilih Plugin. Cari Maven dan pilih Maven plugin. Jika Anda melihat tombol Aktifkan, pilih tombol untuk mengaktifkanMaven.
Perbarui Maven konfigurasi di Visual Studio Code
Jika transformasi gagal VS Code karena masalah Maven perintah, file teks yang berisi log kesalahan terbuka di tab baru. Gunakan informasi di log untuk mengatasi masalah ini.
Pastikan Anda telah mengonfigurasi salah satu dari opsi berikut:
-
Proyek Anda berisi Maven pembungkus di folder root proyek
-
Versi yang Maven didukung oleh Amazon Q tersedia di Anda
PATH
Untuk informasi selengkapnya, lihat Bagaimana cara menambahkan Maven ke saya? PATH
Bagaimana cara menambahkan Maven ke saya? PATH
Untuk mengubah kode Anda VS Code tanpa menggunakan Maven pembungkus, Anda harus menginstal Maven dan menambahkannya ke PATH
variabel Anda.
Untuk memeriksa apakah Anda telah Maven menginstal dengan benar, jalankan mvn -v
di terminal OS baru di luarVisual Studio Code. Anda akan melihat output dengan Maven versi Anda.
Jika Anda mendapatkan output di Visual Studio Code terminal Anda tetapi tidak di terminal OS Anda, atau jika perintah tidak ditemukan, Anda perlu menambahkan Maven ke terminal AndaPATH
.
Untuk menambahkan Maven ke AndaPATH
, ikuti instruksi untuk mesin Anda.
Mengapa Amazon Q tidak dapat membangun kode saya?
Jika transformasi gagal saat Amazon Q membuat kode Anda, proyek Anda mungkin tidak dikonfigurasi dengan benar untuk lingkungan tempat Amazon Q membuat kode Anda. Anda mungkin perlu memperbarui konfigurasi build atau implementasi kode.
Tinjau keluaran log build yang disediakan Amazon Q untuk menentukan apakah ada perubahan yang dapat Anda lakukan pada proyek Anda. Berikut ini adalah beberapa masalah umum yang mungkin mencegah Amazon Q membuat kode Anda.
Hapus jalur absolut di pom.xml
Jika Anda memiliki jalur absolut dalam file pom.xml, Amazon Q tidak akan dapat menemukan file yang relevan, dan akibatnya mungkin tidak dapat membuat kode Anda.
Berikut ini adalah contoh jalur absolut yang dapat Anda miliki di pom.xml
file Anda:
<toolspath> <path>/Library/Java/JavaVirtualMachines/jdk-11.0.11.jdk/Contents/Home/lib/tools.jar</path> </toolspath>
Alih-alih menggunakan jalur absolut, Anda dapat membuat jalur relatif menggunakan pointer. Berikut ini adalah contoh bagaimana Anda dapat mengganti jalur absolut sebelumnya dengan jalur relatif:
<toolspath> <path>${java.home}/../lib/tools.jar</path> </toolspath>
Hapus database lokal atau eksternal dalam pengujian unit
Amazon Q menjalankan pengujian unit apa pun dalam proyek Anda saat membuat kode Anda. Jika pengujian unit memanggil database lokal atau eksternal, Amazon Q tidak akan memiliki akses ke database, menyebabkan build gagal. Untuk mencegah build gagal, Anda harus menghapus panggilan database dari pengujian unit atau menghapus pengujian unit sebelum mengirimkan transformasi.
Mengapa transformasi saya gagal setelah 55 menit?
Jika pekerjaan transformasi kode Anda gagal setelah 55 menit, waktu pembuatan kode Anda kemungkinan melebihi batas waktu pembuatan. Saat ini ada batas waktu 55 menit untuk membuat kode Anda.
Jika waktu pembuatan lokal Anda membutuhkan waktu 55 menit atau lebih, kurangi waktu pembuatan proyek Anda untuk mengubah kode Anda. Jika build lokal Anda lebih cepat daripada build dengan Code Transformation, periksa proyek Anda untuk tugas yang mungkin gagal atau memakan waktu lebih lama di lingkungan yang berbeda. Pertimbangkan untuk menonaktifkan kasus uji yang berjalan lama. Juga pertimbangkan untuk menggunakan batas waktu untuk upaya mengakses sumber daya yang mungkin tidak tersedia dari lingkungan IDE yang aman atau internet.
Mengapa saya tidak dapat mengunduh kode saya yang diubah?
Jika Anda tidak dapat mengunduh kode Anda setelah transformasi Anda selesai, kemungkinan karena salah satu masalah berikut. Lihat topik yang sesuai dengan kesalahan yang Anda lihat dari Amazon Q.
Topik
Kurangi ukuran proyek
Setelah transformasi selesai, Amazon Q menghasilkan artefak keluaran yang berisi perbedaan dengan kode yang ditingkatkan dan ringkasan transformasi dengan informasi tentang perubahan yang dibuatnya. Artefak keluaran harus 1 GB atau kurang agar IDE dapat mengunduhnya.
Jika artefak keluaran melebihi batas, Anda tidak akan dapat mengunduh kode yang ditingkatkan atau ringkasan transformasi. Cobalah mengubah proyek yang lebih kecil untuk mencegah artefak keluaran besar. Jika masalah berlanjut, hubungi Dukungan. Untuk informasi tentang Dukungan menghubungi Amazon Q, lihatMenggunakan Pengembang Amazon Q untuk mengobrol Dukungan.
Unduh kode diff dalam waktu 30 hari
File diff kode dengan kode upgrade Anda hanya tersedia selama 30 hari setelah transformasi selesai. Jika sudah lebih dari 30 hari sejak transformasi selesai, mulai ulang transformasi untuk mengunduh file diff.
Konfigurasikan pengaturan proxy di IDE Anda
Amazon Q mengunduh kode upgrade Anda dari bucket Amazon S3 milik layanan. Bagian dari proses pengunduhan melibatkan penggunaan sertifikat SSL atau TLS untuk menjalin komunikasi antara Amazon S3 dan IDE Anda. Jika Anda menggunakan server proxy, sertifikat SSL atau TLS yang digunakan oleh server proxy Anda harus dipercaya, jika tidak Amazon Q tidak dapat mengunggah proyek Anda.
Untuk mengunduh kode, Anda mungkin perlu mengonfigurasi IDE untuk mempercayai sertifikat atau memperbarui setelan proxy lainnya. Untuk informasi selengkapnya tentang memperbarui setelan proxy Anda, lihatKonfigurasikan pengaturan proxy di IDE Anda.
Hapus karakter wildcard dalam pengaturan JetBrains proxy
Jika Anda telah mengonfigurasi pengaturan proxy di JetBrains IDE Anda, Anda mungkin melihat kesalahan berikut saat mengunduh kode yang ditingkatkan:
software.amazon.awssdk.core.exception.SdkClientException: Unable to execute HTTP request: Dangling meta character '*' near index 0
Hal ini kemungkinan disebabkan oleh adanya karakter wildcard (*) di bidang Tidak ada proxy untuk pengaturan proxy IDE Anda. Java SDK yang digunakan oleh Amazon Q tidak mendukung entri wildcard di bidang ini.
Untuk mengunduh kode Anda, hapus wildcard apa pun dari bidang No proxy for, lalu restart IDE Anda. Jika Anda perlu menentukan host yang harus melewati proxy, gunakan ekspresi reguler alih-alih wildcard. Untuk memperbarui setelan proxy di JetBrains IDE Anda, lihat Proxy HTTP
Bagaimana cara mengakses log transformasi kode?
Akses log di JetBrains
Untuk informasi tentang cara mengakses file JetBrains log, lihat Menemukan file log IDE
Untuk menemukan log yang dipancarkan oleh Amazon Q diJetBrains, cari log IDE untuk string berikut:
software.aws.toolkits.jetbrains.services.codemodernizer
Log transformasi kode dimulai dengan string sebelumnya. Log Maven yang dihasilkan oleh ditampilkan pada tab Run dan memiliki string sebelumnya sebelum dan sesudah entri log.
Akses log di Visual Studio Code
Untuk menemukan log yang dipancarkan oleh Amazon Q diVS Code, selesaikan langkah-langkah berikut:
-
Pilih Lihat di bilah navigasi atas, lalu pilih Command Palette.
-
Cari
Amazon Q: View Logs
di palet perintah yang muncul. -
Log terbuka di IDE. Untuk mencari file log untuk
CodeTransformation
, gunakanCMD + F
atauControl + F
.
Log transformasi kode VS Code diawali denganCodeTransformation:
. Berikut ini adalah contoh log yang dihasilkan VS Code untuk kesalahan dependensi Maven salinan:
2024-02-12 11:29:16 [ERROR]: CodeTransformation: Error in running Maven copy-dependencies command mvn = /bin/sh: mvn: command not found
Bagaimana cara menemukan ID pekerjaan transformasi saya?
Temukan ID pekerjaan Anda di JetBrains
Untuk menemukan ID pekerjaan transformasiJetBrains, buka tab Detail Transformasi di Hub Transformasi dan pilih ikon Tampilkan Status Pekerjaan (jam).
Temukan ID pekerjaan Anda di Visual Studio Code
Untuk menemukan ID pekerjaan transformasi di VS Code, buka Transformation Hub dan pilih ikon Show Job Status (clock).