Proyek musim semi tradisional mungkin sebagian besar digunakan untuk wadah web, seperti Tomcat. Spring Boot menyediakan metode penyebaran super sederhana, yaitu untuk secara langsung menggabungkan aplikasi menjadi paket JAR, dan hanya perlu menjalankan Java -Jar dalam produksi untuk dijalankan.
Artikel ini menjelaskan cara membuat paket jar yang dapat dieksekusi, dan cara menggunakan, menjalankan, dan berhenti.
Pada langkah pertama, kita perlu menambahkan spring-boot-maven-plugin ke pom.xml, dan menambahkannya di bagian dependensi di bawah ini:
<build> <lugin> <lugin> <Groupid> org.springframework.boot </plorgid> <RaintifactId> spring-boot-maven-plugin </stifactid> </lugin> </boat plugin> </build>
Langkah kedua adalah menyimpan pom.xml dan menjalankan perintah paket mvn untuk paket:
LocalHost: Paket Majunwei $ MVN Spring-Boot-Tutorial-Tutorial-Executable $ MVN -DMaven.test.skip = True [info] Pemindaian untuk proyek ... [PERINGATAN] [PERINGATAN] Beberapa masalah ditemui saat membangun Parlinghative '-soning-soning. com.majunwei: Spring-Boot-Tutorial-Executable: 0.0.1-snapshot (/users/majunwei/documents/work/spring-boot-tutorial/spring-boot-tutorial-executable/pom.xml) di com.majunwei: Spring-Boot-tutorial OF OFFORIAL/POM.XML DI COM.MAJUNWEWE: org.springframework.boot: Spring-boot-starter-parent, harap verifikasi struktur proyek Anda @ line 6, kolom 10 [peringatan] [Peringatan] Sangat disarankan untuk memperbaiki masalah ini karena mereka mengancam stabilitas bangunan Anda. [Peringatan] [Peringatan] untuk alasan ini, versi maven di masa depan mungkin tidak mendukung proyek-proyek yang salah. ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- /Users/majunwei/Documents/work/spring-boot-tutorial/spring-boot-tutorial-executable/src/main/resources[INFO] skip non existing resourceDirectory /Users/majunwei/Documents/work/spring-boot-tutorial/spring-boot-tutorial-executable/src/main/resources[INFO] [INFO] --- maven-compiler-plugin:3.1:compile (kompilasi default) @ spring-boot-tutorial-executable --- [info] Tidak ada yang dikompilasi-Semua kelas terbaru [info] [info] --- Maven-resources-plugin: 2.6: TestResources (Info-Tes Sumber Daya) @ spring-boot-tim MAVEN-COMPILER-PLUGIN: 3.1: TestCompile (Default-TestCompile) @ Spring-Boot-Tutorial-Executable --- [Info] Tidak menyusun sumber uji [info] [info] --- Maven-Surefire-plugin: 2.18.1: uji (default-test) @ spring-boot-tut-plugin: 2.18. maven-jar-plugin: 2.6: jar (default-jar) @ spring-boot-tutorial-executable --- [info] [info] --- spring-boot-maven-plugin: 1.5.6.release: pengemasan ulang (default) @ spring-boot-tutorial-executable --- [info] ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Ini melengkapi operasi pengemasan dan menyimpan paket besar di direktori target. Seharusnya sekitar 10MB.
LocalHost: Target Majunwei $ ls -lhtotal 28232DRWXR-XR-X 4 Majunwei Staff 136b 8 4 11:12 CLASSDRWXR-XR-X 3 Majunwei Staff 102b 8 4 11:14 Sumber-Sumber-Sumber. Majunwei Staff 102b 8 4 11:14 Maven-Status-RW-R --- 1 Staf Majunwei 14m 8 4 4 11:14 Spring-Boot-Tutorial-Executable-0.0.1-Snapshot.Jar-RW-R --- 1 Staf Majunwei 3.2k 8 4 11:14 Spring-Boot-Tutorial-Executable-0.0.1-snapshot.jar.originaldrwxr-xr-x 3 Majunwei Staff 102b 8 4 11:12 Kelas Uji
Paket ini berisi paket toples dependen, kelas, dan informasi lainnya. Jika Anda ingin melihat konten paket jar ini dengan cermat, Anda dapat menggunakan perintah JAR TVF atau membuka ritsleting untuk dibaca:
$ JAR TVF Spring-Boot-Tutorial-Executable-0.0.1-snapshot.jar
Ada juga file yang sangat kecil untuk MyProject-0.0.1-snapshot.jar.original di direktori target. Ini adalah file JAR asli yang dibuat oleh Maven sebelum Spring Boot dikemas.
Langkah ketiga adalah menggunakan perintah java -jar untuk menjalankan aplikasi:
LocalHost: Target Majunwei $ Java -Jar Spring-Boot-Tutorial-Executable-0.0.1-Snapshot.jar. ____ __ _ /// / ___'__ __ _ _ (_) _ __ __ _ / / / / / / () / ___ | '_ |' _ | '_ // _` | / / / / / / / / / / / / / / | |) .__ | | _ | | _ | | ============== | _ | =========================== ____/=/_/_/:: Spring Boot :: (v1.5.6.release) 2017-08-04 12: 05: 58.917 Info 909--------05: 05: 58.917 Info 909---------05: 05: 58.917 Info 909-09-------oPLUICE. v0.0.1-snapshot di localhost dengan PID 909 (/users/majunwei/documents/work/spring-boot-tutorial/spring-boot-tutorial-executable/target/spring-boot-tutorial-executable-0.0.1-snapshot.jar by mayor-tutorial-executable-0.0.1-snapshot.jar By mayor /Pengguna/Majunwei/Dokumen/Work/Spring-Boot-Tutorial/Spring-Boot-Tutorial-Executable/Target) 2017-08-04 12: 05: 58.926 Info 909 --- [Main] OsBtutorial.executable.Application: No Active Profile Set, jatuh kembali ke Default Profiles: Default2017 utama] ationConfigembeddedWebApplicationContext: menyegarkan org.springframework.boot.context.embedded.AnnotationConfigbeddeddedwappLicationContext@27f8302d: Startup Tanggal [Jum 04 12:05:59 CST 2017]; Root of Context Hierarchy2017-08-04 12: 06: 01.030 Info 909 --- [Utama] SbcettomcatembeddedServletContainer: Tomcat diinisialisasi dengan port: 8080 (http) 2017-08-04 12: 06: 01.050 Info 909-(http) 2017-08-04 12: 06: 01. o.apache.catalina.core.StandardService: Starting service [Tomcat]2017-08-04 12:06:01.053 INFO 909 --- [ main] org.apache.catalina.core.StandardEngine: Starting Servlet Engine: Apache Tomcat/8.5.162017-08-04 12:06:01.224 INFO 909 --- [OST-StartStop-1] OCCC [TOMCAT]. [LocalHost]. [/]: Menginisialisasi Spring WebApplicationContext2017-08-04 12: 06: 01.225 Info 909 --- [ost-startstop-1] ostweb.context.contexplloader: root-startstop-1] ostweb.context.contexplloader: root-startstop-1] ostweb.context.contexpLoader: root-webplapation: root-startstop-1] ostweb.context.contexpLOAderer: root-webplapation: root-startstop-1] ostweb.context.contexpLOAderer: root-webpleation: root-startstop-1 12: 06: 01.430 Info 909 --- [OST-StartStop-1] OSBWServlet.ServletregistrationBean: Mapping Servlet: 'DispatcherServlet' ke [/] 2017-08-04 12: 06: 01.437 Info 909 --- [ost-startstop-1]: osbwserv. 'CharacterencodingFilter' ke: [/*] 2017-08-04 12: 06: 01.437 Info 909 --- [OST-StartStop-1] OSBWServlet.FilterregistrationBean: Mapping Filter: 'HiddenHttpMethodFilter' to: [/*] 2017--08-08: 012.4.01: 01.4.01: 012.4.01: 0-01: 0-08.01.01: 0-08.01: 0-01.01: 0-01.01: 0-08.01.0 [ost-startstop-1] osbwservlet.filterregistrationBean: pemetaan filter: 'httpputformcontentfilter' to: [/*] 2017-08-04 12: 06: 01.439 Info 909 --- [ost-startStop-1] osbwservlet.filterregistration 909-[ost-startstop-1] osbwservlet [/*] 2017-08-04 12: 06: 01.439 Info 909 --- [ost-startstop-1] osbwservlet.filterregistrationbean: pemetaan filter: 'requestContextFilter' ke: [/*] 2017-08-04 12: 06: 01.890 Info 909 -09 -08-04 12: 06: 01.890 Info 909 -09 -08-04 12: 06: 01.890 Info 909 -09 -08-04 12: 06: 01.890 Info 909 -09 -08-04 12: 06: 01.890 Info 909 -08-08-04 12: 06: 01.890 Info 909 -08-08-04 12: 06: 01.890 Info 909 -08-08-04 12: 06: 01.89 @ControllerAdvice: org.springframework.boot.context.embedded.annotationConfigembeddedWebApplicationContext@27f8302d: Tanggal startup [Jumat 04 Agustus 12:05:59 CST 2017]; Root of Context Hierarchy2017-08-04 12: 06: 02.019 Info 909 --- [Main] swsmmarequestmappingHandlermapping: dipetakan "{[/]}" ke java.lang. home.06.06.06.06.0622.06.0622.06.0622.0622.06.0622.06.06.06.062.062.062.062.062.06 --- [main] swsmmarequestmappappingHandlermapping: dipetakan "{[/error]}" ke org.springframework.http.responseentity <java.object> <java.map <java.string, java.object >>> org.springframework.boot.autoconfigure.web.basicerrorController.Error (javax.servlet.http.httpservletrequest) 2017-08-04 12: 06: 02.024 Info 909 --- [Utama] Swsmmestmapping: Mapping-Mapping: MaDapping: Main.- [Utama] "{[/error], menghasilkan = [teks/html]}" ke org.springframework.web.servlet.modelandview publik org.springframework.boot.autoconfigure.web.basicerrorController.errorhtml (javax.servlet.http.httpservletRequest, javax.servlet.http.httpservletresponse 2017-08-08-02.04: 02.04: 022.04: 02.04: 02.04: 02.04: 02.04: 02.04: 02.04: 02.04: 02.04: 02. Oswshandler.Simpleurlhandlermapping: Path URL yang dipetakan [/webjars/**] ke pawang tipe [kelas org.springframework.web.servlet.resource.Resourcehttpriblandler 2017-08-04 12: 06: 02.062 Info 909-dan 08-04. Jalur URL [/**] Ke penangan tipe [kelas org.springframework.web.servlet.resource.resourcehttprequestHandler] 2017-08-04 12: 06: 02.129 info 909 --- [Main] oswshandler.Simpleurlhandlermapping: p dari COLPLOV/MAINDOC.LACLAV.LOPLAV/POPLEV/POPLEV/POPEDOC.IPLAV.LOPLAV.IPLAV.IPLAV.IPLAV.IPLAV.IPLAV/POPLEV/POPLEV/POPLEV/POPLEV/POPEDOC.LEVOVED.IPLAV.IPLAV.IPLAV.IPLAV.IPLAVED. org.springframework.web.servlet.resource.ResourceHttpRequestHandler]2017-08-04 12:06:02.344 INFO 909 --- [ main] osjeaAnnotationMBeanExporter : Registering beans for JMX exposure on startup2017-08-04 12:06:02.448 INFO 909 --- [ main] SbcettomcatembeddedServletContainer: Tomcat dimulai di port: 8080 (http) 2017-08-04 12: 06: 02.458 Info 909 --- [Utama] Osbtutorial.executable.applikasi: Mulai Aplikasi di 4.054 detik (JVM berjalan untuk 4.622)Langkah 4: Sama seperti sebelumnya, jika Anda ingin keluar dari aplikasi, tekan CTRL-C.
Unduh kode sumber tutorial ini
Di atas adalah semua konten artikel ini. Saya berharap ini akan membantu untuk pembelajaran semua orang dan saya harap semua orang akan lebih mendukung wulin.com.