Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Gunakan CodeArtifact dengan Gradle
Setelah Anda memiliki token CodeArtifact autentikasi dalam variabel lingkungan seperti yang dijelaskan dalam Lulus token autentikasi menggunakan variabel lingkungan, ikuti petunjuk ini untuk menggunakan paket Maven dari, dan menerbitkan paket baru ke, repositori. CodeArtifact
Topik
Mengambil dependensi
Untuk mengambil dependensi dari CodeArtifact build Gradle, gunakan prosedur berikut.
Untuk mengambil dependensi dari CodeArtifact dalam build Gradle
Jika belum, buat dan simpan token CodeArtifact autentikasi dalam variabel lingkungan dengan mengikuti prosedur diTeruskan token auth menggunakan variabel lingkungan.
-
Tambahkan
mavenbagian kerepositoriesbagian dalambuild.gradlefile proyek.maven { url 'https://my_domain-111122223333.d.codeartifact.region.amazonaws.com/maven/my_repo/' credentials { username "aws" password System.env.CODEARTIFACT_AUTH_TOKEN } }Contoh
urlsebelumnya adalah titik akhir CodeArtifact repositori Anda. Gradle menggunakan titik akhir untuk terhubung ke repositori Anda. Dalam sampel,my_domainadalah nama domain Anda,111122223333adalah ID pemilik domain, danmy_repoadalah nama repositori Anda. Anda dapat mengambil titik akhir repositori dengan menggunakan perintah.get-repository-endpointAWS CLIMisalnya, dengan repositori bernama
my_repodi dalam domain bernamamy_domain, perintahnya adalah sebagai berikut:aws codeartifact get-repository-endpoint --domainmy_domain--domain-owner111122223333--repositorymy_repo--format mavenParameter perintah
get-repository-endpointakan mengembalikan titik akhir repositori:url 'https://my_domain-111122223333.d.codeartifact.region.amazonaws.com/maven/my_repo/'credentialsObjek dalam contoh sebelumnya menyertakan token CodeArtifact autentikasi yang Anda buat di Langkah 1 yang digunakan Gradle untuk mengautentikasi. CodeArtifactcatatan
Untuk menggunakan endpoint dualstack, gunakan endpoint.
codeartifact.region.on.aws (Opsional) - Untuk menggunakan CodeArtifact repositori sebagai satu-satunya sumber untuk dependensi proyek Anda, hapus bagian lain dari.
repositoriesbuild.gradleJika Anda memiliki lebih dari satu repositori, Gradle menelusuri setiap repositori untuk dependensi sesuai urutan pencantumannya.Setelah mengonfigurasi repositori, Anda dapat menambahkan dependensi proyek ke bagian
dependenciesdengan sintaks Gradle standar.dependencies { implementation 'com.google.guava:guava:27.1-jre' implementation 'commons-cli:commons-cli:1.4' testImplementation 'org.testng:testng:6.14.3' }
Mengambil plugin
Secara default Gradle akan menyelesaikan plugin dari Portal Plugin Gradle
Untuk menarik plugin dari repositori CodeArtifact
Jika belum, buat dan simpan token CodeArtifact autentikasi dalam variabel lingkungan dengan mengikuti prosedur diTeruskan token auth menggunakan variabel lingkungan.
Tambahkan
pluginManagementblok kesettings.gradlefile Anda.pluginManagementBlok harus muncul sebelum pernyataan lain disettings.gradle, lihat cuplikan berikut:pluginManagement { repositories { maven { name 'my_repo' url 'https://my_domain-111122223333.d.codeartifact.region.amazonaws.com/maven/my_repo/' credentials { username 'aws' password System.env.CODEARTIFACT_AUTH_TOKEN } } } }
Hal ini akan memastikan bahwa Gradle menyelesaikan plugin dari repositori yang ditentukan. Repositori harus memiliki repositori hulu dengan koneksi eksternal ke Portal Plugin Gradle (mis. gradle-plugins-store) sehingga plugin Gradle yang umum diperlukan tersedia untuk build. Untuk informasi selengkapnya, lihat Dokumentasi Gradle
Memublikasikan artefak
Bagian ini menjelaskan cara mempublikasikan pustaka Java yang dibangun dengan Gradle ke CodeArtifact repositori.
Pertama, tambahkan plugin maven-publish ke bagian plugins dari file build.gradle proyek.
plugins { id 'java-library' id 'maven-publish' }
Selanjutnya, tambahkan bagian publishing ke file build.gradle proyek.
publishing { publications { mavenJava(MavenPublication) { groupId = 'group-id' artifactId = 'artifact-id' version = 'version' from components.java } } repositories { maven { url 'https://my_domain-111122223333.d.codeartifact.region.amazonaws.com/maven/my_repo/' credentials { username "aws" password System.env.CODEARTIFACT_AUTH_TOKEN } } } }
Plugin maven-publish menghasilkan file POM berdasarkan groupId, artifactId, dan version yang ditentukan dalam bagian publishing.
Setelah perubahan ke build.gradle selesai, jalankan perintah berikut untuk membangun proyek dan mengunggah ke repositori.
./gradlew publish
Gunakan list-package-versions untuk memeriksa bahwa paket berhasil dipublikasikan.
aws codeartifact list-package-versions --domainmy_domain--domain-owner111122223333--repositorymy_repo--formatmaven\ --namespacecom.company.framework--packagemy-package-name
Contoh output:
{ "format": "maven", "namespace": "com.company.framework", "package": "example", "versions": [ { "version": "1.0", "revision": "REVISION-SAMPLE-1-C7F4S5E9B772FC", "status": "Published" } ] }
Untuk informasi selengkapnya, lihat topik berikut di situs web Gradle:
Menjalankan build Gradle di IntelliJ IDEA
Anda dapat menjalankan build Gradle di IntelliJ IDEA yang menarik dependensi dari. CodeArtifact Untuk mengautentikasi CodeArtifact, Anda harus memberikan token CodeArtifact otorisasi kepada Gradle. Ada tiga metode untuk menyediakan token autentikasi.
Metode 1: Menyimpan token autentikasi di
gradle.properties. Gunakan metode ini jika Anda dapat menimpa atau menambah isigradle.propertiesfile.Metode 2: Menyimpan token autentikasi dalam file terpisah. Gunakan metode ini jika Anda tidak ingin memodifikasi file
gradle.properties.Metode 3: Menghasilkan token autentikasi baru untuk setiap proses dengan menjalankan
awssebagai skrip inline di.build.gradleGunakan metode ini jika Anda ingin skrip Gradle mengambil token baru pada setiap proses. Token tidak akan disimpan di sistem file.