Bagaimana cara menginstal artefak Maven dengan sumber dari baris perintah?

92

Bagaimana cara menginstal artefak Maven dengan sumber?

jadi nanti saya tidak perlu membuka proyek di gerhana untuk melihat beberapa kode.

EDIT: Saya tahu saya dapat menambahkan kode ini ke pom.xml

<plugin>
        <artifactId>maven-source-plugin</artifactId>
        <executions>
                <execution>
                        <id>attach-sources</id>
                        <phase>verify</phase>
                        <goals>
                                <goal>jar</goal>
                        </goals>
                </execution>
        </executions>
</plugin>

tetapi saya ingin melakukannya dari baris perintah (untuk membuatnya lebih universal).

IAdapter
sumber
Dan di mana Anda menginginkan sumber tersebut?
Sean Patrick Floyd

Jawaban:

158

Untuk mengunduh sumber untuk dependensi Anda:

mvn eclipse:eclipse -DdownloadSources=true

Untuk melampirkan sumber ke instalasi:

mvn source:jar install

Ini juga lebih disukai untuk menggunakan goal source:jar-no-forkdi pom Anda seperti yang dijelaskan di halaman maven-source-plugin .

dogbane
sumber
tetapi sumber snapshot yang diinstal tidak ada :(
IAdapter
63

Sederhana, dapatkan sumber dan JavaDocs Anda:

mvn dependency:resolve -Dclassifier=javadoc
mvn dependency:resolve -Dclassifier=sources
Joseph Lust
sumber
2
@csgeek Pertanyaan diucapkan secara ambigu, dapat diinterpretasikan dengan berbagai cara. Cmd mengunduh mvn src dan doc dan menginstal secara lokal sehingga tidak diperlukan pemetaan manual dari Eclipse. Lihat jawaban dogbane untuk menginstal src untuk jar yang dibuat secara lokal.
Joseph Lust
1
pilihan yang jauh lebih baik dan lebih bersih .. lebih baik daripada mengubah pengaturan pom.xml atau gerhana secara individual, hal-hal tersebut lebih sering berubah.
Karthik Karuppannan
"mvn source: jar install" tidak akan mengubah pom atau pengaturan Eclipse apa pun .... Maven bertujuan untuk menginstal sumber repo kode lokal di repositori .m2. (F.ex. jika Anda melakukan kloning beberapa versi snapshot yang ingin Anda rujuk dari proyek lain.) Resolusi dependensi dimaksudkan untuk mendownload source eksternal atau javadoc jars.
cslotty
4

Silakan gunakan mvn source:jarinstall untuk menginstal artefak Maven.

Venky Vungarala
sumber
1
Ini sepertinya tidak berhasil. Ini hanya menghasilkan jar sumber. Saya ingin menggabungkan dengan mvn clean installcara itu, baik objek maupun stoples berada di m2 saya. Saya mengaksesnya dari Android Studio menggunakan gradle.
TheRealChx101
-1

Caranya cukup mudah dengan eclipse, klik kanan project di tampilan project explorer, klik item menu maven, lalu klik download sources ..

Gursel Koca
sumber
tetapi sumber snapshot yang diinstal tidak ada :( Saya mendapatkan error 24.02.11 10:23:23 CET: Tidak dapat mendownload java-source untuk artefak my: project: 1.2.18-SNAPSHOT
IAdapter
Nah, pertanyaan Anda sudah diklarifikasi .. Jawaban saya sudah tidak valid.
Gursel Koca
Mengapa? maven adalah tentang melakukan sesuatu secara otomatis. Saya tidak dapat mengaksesnya karena toples dengan itu tidak dibuat.
IAdapter