JavaRush /Kurslar /All lectures for UZ purposes /Ilovani ishga tushurish

Ilovani ishga tushurish

All lectures for UZ purposes
Daraja, Dars
Mavjud

Spring Boot da ko'plab ishlab chiquvchilar ilovalari avtomatik konfiguratsiya, komponentlarni skanerlash va "ilova klassida" qo'shimcha konfiguratsiyani aniqlash imkoniyatidan foydalanishini xohlashadi. Ushbu uchta funksiyani faollashtirish uchun bitta @SpringBootApplication annotatsiyasidan foydalanish mumkin:

  • @EnableAutoConfiguration: Spring Boot ning avtomatik konfiguratsiya mexanizmini faollashtiradi

  • @ComponentScan: Ilovani joylashgan paketni @Component annotatsiyasini skanerlashni faollashtiradi

  • @SpringBootConfiguration: Kontekstda qo'shimcha binlarni ro'yxatga olish yoki qo'shimcha konfiguratsiya sinflarini import qilish imkonini beradi. Bu Spring ning standart @Configuration annotatsiyasiga muqobil bo'lib, sizning integratsion testlaringizdagi konfiguratsiyalarni aniqlashga yordam beradi.

Java
import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; // @SpringBootConfiguration, @EnableAutoConfiguration, @ComponentScan bilan bir xil @SpringBootApplication public class MyApplication { public static void main(String[] args) { SpringApplication.run(MyApplication.class, args); } } 
Kotlin
import org.springframework.boot.autoconfigure.SpringBootApplication import org.springframework.boot.runApplication // @SpringBootConfiguration @EnableAutoConfiguration @ComponentScan bilan bir xil @SpringBootApplication class MyApplication fun main(args: Array<String>) { runApplication<MyApplication>(*args) } 
@SpringBootApplication shuningdek @EnableAutoConfiguration va @ComponentScan annotatsiyalarining atributlarini sozlash uchun taxalluslar beradi.

Bu funksiyalarning hech biri majburiy emas va siz ushbu yagona annotatsiyani faollashtirgan har qanday funksiyalar bilan almashtirishingiz mumkin. Masalan, ilovangizda komponentlarni skanerlash yoki konfiguratsiya xususiyatlarini skanerlashdan foydalanmaslik mumkin:

Java
import org.springframework.boot.SpringApplication; import org.springframework.boot.SpringBootConfiguration; import org.springframework.boot.autoconfigure.EnableAutoConfiguration; import org.springframework.context.annotation.Import; @SpringBootConfiguration(proxyBeanMethods = false) @EnableAutoConfiguration @Import({ SomeConfiguration.class, AnotherConfiguration.class }) public class MyApplication { public static void main(String[] args) { SpringApplication.run(MyApplication.class, args); } } 
Kotlin
import org.springframework.boot.SpringBootConfiguration import org.springframework.boot.autoconfigure.EnableAutoConfiguration import org.springframework.boot.docs.using.structuringyourcode.locatingthemainclass.MyApplication import org.springframework.boot.runApplication import org.springframework.context.annotation.Import @SpringBootConfiguration(proxyBeanMethods = false) @EnableAutoConfiguration @Import(SomeConfiguration::class, AnotherConfiguration::class) class MyApplication fun main(args: Array<String>) { runApplication<MyApplication>(*args) } 

Bu misolda MyApplication har qanday boshqa Spring Boot ilovasi kabi, faqat @Component va @ConfigurationProperties bilan anotatsiyalangan sinflar avtomatik ravishda aniqlangan emas va foydalanuvchi binlari ochiq tarzda import qilinadi (qarang @Import annotatsiyasiga).

Ilovani bajarish

Ilovani jar-fayl sifatida qadoqlash va o'rnatilgan HTTP serveridan foydalanishning eng katta afzalliklaridan biri shundaki, siz boshqa har qanday ilova kabi ilovani ishga tushirishingiz mumkin. Bu Spring Boot ilovalarini debug qilish uchun qo'llaniladi. Sizning IDE uchun hech qanday maxsus plaginlar yoki kengaytmalar kerak emas.

Ushbu bo'lim faqat jar-fayl asosidagi qadoqlashni tasvirlaydi. Agarda siz ilovangizni war-fayl sifatida qadoqlashga qaror qilgan bo'lsangiz, server yoki IDE uchun hujjatlarni ko'rib chiqing.

IDE dan ishga tushirish

Siz Spring Boot ilovasini IDE dan Java ilovasi sifatida ishga tushirishingiz mumkin. Biroq, avval loyihani import qilishingiz kerak. Import qilish bosqichlari sizning IDE va qurilish tizimingizga bog'liq. Ko'pchilik IDE lar Maven loyihalarini to'g'ridan-to'g'ri import qila oladi. Masalan, Eclipse foydalanuvchilari Import…​ → Existing Maven Projects ni File menyusidan tanlashlari mumkin.

Agar loyihangizni IDE ga to'g'ridan-to'g'ri import qila olmasangiz, qurilish plaginidan foydalanib IDE metama'lumotlarini hosil qilishingiz mumkin. Maven Eclipse va IDEA uchun plaginlarni o'z ichiga oladi. Gradle turli IDE lar uchun plaginlarni taqdim etadi.

Agar siz tasodifan veb-ilovani ikki marta ishga tushirsangiz, "Port already in use" xatolik xabarini ko'rasiz. Spring Tools foydalanuvchilari Relaunch tugmachasidan foydalanishlari mumkin, bu esa mavjud bo'lgan har qanday nusxani yopishiga ishonch hosil qiladi.

Qadoqlangan ilovani ishga tushirish

Agar siz Spring Boot uchun Maven yoki Gradle plaginlaridan foydalanib ishga tushiriladigan jar-fayl hosil qilsangiz, ilovangizni java -jar buyrug'i yordamida ishga tushirishingiz mumkin, quyidagi misolda ko'rsatilgani kabi:

$ java -jar target/myapplication-0.0.1-SNAPSHOT.jar

Shuningdek, masofaviy debuglashni faollashtirgan holda qadoqlangan ilovani ishga tushirish mumkin. Bu quyidagi misolda ko'rsatilgani kabi qadoqlangan ilovaga debuggerni ulash imkonini beradi:

$ java -Xdebug -Xrunjdwp:server=y,transport=dt_socket,address=8000,suspend=n \
       -jar target/myapplication-0.0.1-SNAPSHOT.jar

Maven uchun plagin ishlatish

Spring Boot ning Maven uchun plagini run maqsadini o'z ichiga oladi, bu ilovani tezda kompilyatsiya qilish va ishga tushirish uchun ishlatiladi. Ilovalar o'zingizning IDE ning o'zi kabi ochiq tarzda ishga tushiriladi. Quyidagi misolda Spring Boot ilovasini ishga tushirish uchun tipik Maven buyruqlari ko'rsatilgan:

$ mvn spring-boot:run

Shuningdek, quyidagi misolda ko'rsatilgani kabi tizim muhit o'zgaruvchisi MAVEN_OPTS dan foydalanishingiz mumkin:

$ export MAVEN_OPTS=-Xmx1024m

Gradle uchun plagin ishlatish

Spring Boot ning Gradle plagini shuningdek bootRun vazifasini o'z ichiga oladi, bu ochiq tarzda ilovani ishga tushirish uchun ishlatiladi. bootRun vazifasi har doim org.springframework.boot va java plaginlari qo'llanilganda qo'shiladi, quyidagi misolda ko'rsatilgani kabi:

$ gradle bootRun

Shuningdek, quyidagi misolda ko'rsatilgani kabi tizim muhit o'zgaruvchisi JAVA_OPTS dan foydalanishingiz mumkin:

$ export JAVA_OPTS=-Xmx1024m

Hot Swap

Spring Boot ilovalari oddiy Java ilovalari bo'lgani uchun, JVM ning hot swap funksiya "qutidan chiqqan" kabi ishlashi kerak. JVM ning hot swap funksiyasi bir nechta bayt-kodlarni almashtirish borasida cheklangan. To'liqroq yechim uchun JRebel dan foydalanishingiz mumkin.

spring-boot-devtools moduli shuningdek, ilovalarni tezda qayta ishga tushirishni qo'llab-quvvatlash uchun vositalarni o'z ichiga oladi.

Izohlar
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION