Saya mencoba melakukan proyek pertama saya dengan Spring 3.0 (dan maven). Saya telah menggunakan Spring 2.5 (dan versi primer) di beberapa proyek. Namun saya agak bingung, modul apa yang harus saya definisikan sebagai dependensi di pom.xml saya. Saya hanya ingin menggunakan fungsi wadah inti (kacang, inti, konteks, el).
Saya terbiasa melakukan ini:
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring</artifactId>
<version>2.5.6</version>
</dependency>
Tapi sekarang saya agak bingung, karena tidak ada modul pegas yang dikemas penuh untuk versi 3.0 lagi. Saya mencoba yang berikut ini tetapi tidak berhasil (beberapa kelas hilang).
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>3.0.0.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-expression</artifactId>
<version>3.0.0.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-beans</artifactId>
<version>3.0.0.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>3.0.0.RELEASE</version>
</dependency>
Bantuan apa pun akan dihargai!
java
spring
maven-2
dependencies
Nils Schmidt
sumber
sumber
Jawaban:
Ada posting yang sangat bagus di Blog Musim Semi dari Keith Donald yang merinci cara Mendapatkan Aritfacts Spring 3 dengan Maven , dengan komentar yang merinci kapan Anda membutuhkan masing-masing dependensi ...
sumber
Spring (sekarang) memudahkan untuk menambahkan Spring ke proyek hanya dengan menggunakan satu dependensi, mis
Ini akan menyelesaikan menjadi
Lihat halaman dokumentasi Spring Framework untuk informasi lebih lanjut.
sumber
sumber
Karena pertanyaan ini tampaknya masih mendapatkan cukup banyak pandangan, mungkin berguna untuk dicatat bahwa untuk Spring 4+ paling mudah untuk mulai menggunakan
Spring Boot
dan POM starter Spring Boot .Menggunakan Spring Boot ada lebih sedikit dependensi untuk dikelola (dan dengan demikian lebih sedikit konflik), dan menyiapkan Spring Context yang berfungsi dan terintegrasi dengan baik jauh lebih mudah. Saya sangat merekomendasikannya.
sumber
Kelas apa yang hilang? Nama kelas itu sendiri harus menjadi petunjuk yang baik untuk modul yang hilang.
FYI, saya tahu sangat nyaman untuk memasukkan uber spring jar tetapi ini benar-benar menyebabkan masalah saat mengintegrasikan dengan proyek lain. Salah satu manfaat di balik sistem ketergantungan ini adalah akan menyelesaikan konflik versi di antara ketergantungan.
Jika perpustakaan saya bergantung pada spring-core: 2.5 dan Anda bergantung pada library saya dan uber-spring: 3.0, Anda sekarang memiliki 2 versi spring di classpath Anda.
Anda dapat menyiasatinya dengan pengecualian tetapi jauh lebih mudah untuk membuat daftar dependensi dengan benar dan tidak perlu mengkhawatirkannya.
sumber
Anda dapat menambahkan ketergantungan konteks pegas untuk stoples pegas. Anda akan mendapatkan stoples berikut bersamanya.
jika Anda juga menginginkan komponen web, Anda dapat menggunakan dependensi spring-webmvc .
Anda dapat menggunakan versi apa pun yang Anda inginkan. Saya telah menggunakan 5.0.5.RELEASE di sini.
sumber
Anda bisa mencobanya
sumber
Gunakan BOM untuk memecahkan masalah versi.
https://docs.spring.io/spring/docs/4.3.18.RELEASE/spring-framework-reference/html/overview.html#overview-maven-bom
sumber