Saya baru-baru ini bekerja pada kelas Java yang menghasilkan permutasi per daftar objek. Bagaimanapun, saya ingin perpustakaan ini ditawarkan kepada publik, jadi saya punya beberapa pertanyaan:
- Kebanyakan perpustakaan yang saya lihat memiliki penamaan paket yang rumit ini, khususnya termasuk
com
/org
. Apakah ada konvensi untuk ini ataupermutations
paket cukup? - Apakah ada format khusus untuk menerbitkan ini? Haruskah saya menyertakan PERANG terpisah untuk kode sumber / javadoc?
- Saya punya file di repositori GitHub. Saya kira saya dapat melayani file di sana, tetapi bagaimana saya membuat orang menemukan repo saya?
java
open-source
libraries
Amir Rachum
sumber
sumber
amirrachum.util.permutations
mungkin baik.Jawaban:
Cara standar untuk menerbitkan (terlepas dari kode sumber di GitHub) adalah memiliki rilis JAR / WAR resmi ke Maven Central yang banyak digunakan oleh alat (Maven, Gradle, Ant / Ivy) untuk membuat perpustakaan sebagai ketergantungan. Untuk melakukan ini, cara terbaik adalah melalui proses Nexus .
Juga dianggap ramah untuk meng-host JAR / WAR yang sama pada repo hosting kode seperti Sourceforge atau GitHub.
Dalam hal domain Anda. Saya sarankan Anda membeli firstnamelastname.net/org/com dan menggunakannya sebagai skema penamaan Anda (misalnya bagi saya itu net.martijnverburg.foobar). Kalau tidak menggunakan domain github seperti yang disarankan oleh @Daniel Moura adalah yang baik.
Untuk mempublikasikannya, blog tentang hal itu, berkicau tentang hal itu, kirimkan ke berita hacker, reddit, digg, slashdot, dzone, TSS, javaworld dll
HTH!
sumber
Jika Anda telah mendorong kode Anda ke GitHub maka berbagi pustaka (toples) Anda dengan JitPack mudah .
Pengguna Anda hanya perlu menambahkan repositori ke build.gradle mereka:
dan kemudian repositori GitHub Anda sebagai dependensi:
JitPack bertindak sebagai tempat penyimpanan mirip dengan Maven Central. Yang menyenangkan adalah Anda tidak perlu mengunggah perpustakaan Anda. Di balik layar, JitPack akan memeriksa kode dari GitHub dan mengompilasinya. Saat Anda menerbitkan rilis baru di GitHub, tersedia untuk digunakan orang lain.
Ada juga panduan tentang cara menyiapkan proyek dan contoh-contoh untuk menambahkan toples sumber.
Tidak perlu memiliki nama domain sehingga groupId Anda menjadi com.github.Username. Anda juga bisa menggunakannya untuk penamaan paket.
sumber
Ada rekomendasi dari Oracle tentang cara memberi nama paket Anda . Alasan konvensi penamaan ini adalah untuk meminimalkan duplikat. Jika setiap orang hanya menggunakan nama pendek dan sederhana, maka kemungkinan besar proyek akan menyertakan dua
permutation
paket. Jika satu nama kelas sama, akan ada konflik penamaan. Hal-hal dapat membingungkan bagi pengembang, jika tidak ada konflik penamaan yang mencegah resolusi kelas.Jika Anda memiliki nama domain, saya sarankan menggunakan itu. Jika Anda menggunakan layanan seperti GitHub atau Sourceforge, menggunakan jalur untuk proyek Anda sudah cukup. Apapun, jelaslah untuk mencegah konflik atau kebingungan.
Tidak ada format khusus. Paling tidak, sumber dan konvensi membangun skrip (Make, Ant, Maven). Sangat menyenangkan memiliki JAR atau WAR yang telah dikompilasi, tetapi tidak penting. Beberapa proyek termasuk Javadoc di perpustakaan, yang lain mungkin menghasilkan dua JAR (satu dengan Javadoc dan satu tanpa). Mungkin juga merupakan ide bagus untuk hanya mempublikasikan Javadoc Anda di Internet jika solusi hosting proyek Anda memungkinkan.
Iklankan itu. Mulailah dengan memamerkannya kepada beberapa teman. Blog tentang itu. Bagikan tautan di Internet. Temukan seseorang yang memiliki masalah yang dapat mereka pecahkan dengan menggunakan perpustakaan ini (tetapi pastikan Anda mengungkapkan bahwa Anda membuat perpustakaan).
sumber