Jadual Kandungan
1 Mengapa pembungkusan
2. Cara membungkus
1. hanya untuk kemudahan memahami pembungkusan Perkara yang perlu diberi perhatian -----------------|
(1) Gunakan cmd untuk mencari laluan daripada output kompilasi projek
2、打成war包
Rumah Java javaTutorial Bagaimana untuk membungkus projek Java atau Java Web ke dalam pakej JAR atau pakej WAR

Bagaimana untuk membungkus projek Java atau Java Web ke dalam pakej JAR atau pakej WAR

May 07, 2023 am 10:25 AM
java jar war

    1 Mengapa pembungkusan

    Terdapat pendapat yang berbeza tentang isu ini di Internet. Berdasarkan pemahaman peribadi dan pendapat dalam talian, ia dibungkus sebagai pakej balang untuk kemudahan orang lain. Jika anda menjalankan program java, anda tidak perlu mencari kelas yang mengandungi kaedah utama untuk dilaksanakan jika anda menggunakan pakej balang pihak ketiga, import pakej balang terus ke dalam projek anda sendiri dan bukannya menyalin sekumpulan balang; fail kelas. Membina pakej perang ialah kaedah penggunaan aplikasi web yang dipilih dalam persekitaran pengeluaran sebenar Dikatakan dalam talian bahawa kaedah ini tidak akan menyebabkan kehilangan fail seperti terus menyalin folder, dan pelayan akan mengoptimumkan aplikasi, seperti memadam folder kosong, dsb. Perkara di atas adalah untuk makluman sahaja.

    2. Cara membungkus

    Persekitaran setempat ialah windows 10, jdk 1.8

    Alat yang sama jdk/ digunakan untuk membungkus balang atau perang pakej. bin/jar.exe

    1. hanya untuk kemudahan memahami pembungkusan Perkara yang perlu diberi perhatian -----------------|

    Pengenalan Projek

    Struktur jadual pangkalan data dan jadualnya penyataan penciptaan

    CREATE TABLE `customer`  (
      `cust_id` int(11) NOT NULL AUTO_INCREMENT,
      `cust_name` char(50) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL,
      `cust_address` char(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
      `cust_city` char(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
      `cust_state` char(5) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
      `cust_zip` char(10) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
      `cust_country` char(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
      `cust_contact` char(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
      `cust_email` char(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
      PRIMARY KEY (`cust_id`) USING BTREE
    ) ENGINE = InnoDB AUTO_INCREMENT = 10006 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Compact;
    
    INSERT INTO `customer` VALUES (10001, 'Coyote Inc.', '200 Maple Lane', 'Detroit', 'MI', '44444', 'china', 'Y Lee', 'ylee@coyote.com');
    INSERT INTO `customer` VALUES (10002, 'Mouse House', '333 Fromage Lane', 'Columbus', 'OH', '43333', '', 'Jerry Mouse', NULL);
    INSERT INTO `customer` VALUES (10003, 'Wascals', '1 Sunny Place', 'Muncie', 'IN', '42222', 'USA', 'Jim Jones', 'rabbit@wascally.com');
    INSERT INTO `customer` VALUES (10004, 'Yosemite Place', '829 Riverside Drive', 'Phoenix', 'AZ', '88888', 'UK', 'Y Sam', 'sam@yosemite.com');
    INSERT INTO `customer` VALUES (10005, 'gzn or 1=1', '4545 53rd Street', 'Chicago', 'IL', '54545', '', 'E Fudd', NULL);
    Salin selepas log masuk
    Bagaimana untuk membungkus projek Java atau Java Web ke dalam pakej JAR atau pakej WARStruktur Projek

    Bagaimana untuk membungkus projek Java atau Java Web ke dalam pakej JAR atau pakej WARapp.java

    package com.gzn.demo;
    
    import java.sql.*;
    import java.util.Scanner;
    
    /**
     * @author: gzn
     * @date: 2019/4/13 10:53
     */
    public class App {
        public static void main(String[] args) {
    
            int count = Integer.valueOf(args[0]);
            System.out.println("请输入要查询用户的条数?(0到5之间):");
            Scanner sc = new Scanner(System.in);
            int count = sc.nextInt();
    
            String driver = "com.mysql.jdbc.Driver";
            String url = "jdbc:mysql://localhost:3306/corejava";
            String username = "root";
            String password = "root";
            String sql = "select cust_id, cust_name, cust_address, cust_city from customer limit 0, ? ";
    
            try {
                Class.forName(driver);
                Connection conn = DriverManager.getConnection(url, username, password);
                PreparedStatement pstat = conn.prepareStatement(sql);
                pstat.setInt(1, count);
                ResultSet rs = pstat.executeQuery();
                while(rs.next()) {
                    System.out.println("cust_id:" + rs.getObject("cust_id").toString());
                    System.out.println("cust_name: " + rs.getObject("cust_name").toString());
                    System.out.println("cust_address: " + rs.getObject("cust_address").toString());
                    System.out.println("cust_city:" + rs.getObject("cust_city").toString());
                    System.out.println("----------------------" +"\n");
                }
    
            } catch (ClassNotFoundException e) {
                e.printStackTrace();
            } catch (SQLException e) {
                e.printStackTrace();
            }
        }
    
    }
    Salin selepas log masuk

    |---- ------ ------------------------------------------------ ------ ---------------|

    1.1. Gunakan balang untuk membungkus secara manual

    (1) Gunakan cmd untuk mencari laluan daripada output kompilasi projek

    Bagaimana untuk membungkus projek Java atau Java Web ke dalam pakej JAR atau pakej WAR

    Bagaimana untuk membungkus projek Java atau Java Web ke dalam pakej JAR atau pakej WAR (2) Untuk mencipta fail semasa menjalankan arahan

    jar -cvf helloworld.jar .- c (buat, cipta) jadual dalam direktori ini

    -v (verbose, panjang, terperinci) mencetak butiran mampatan pada konsol

    -f (nama fail) menentukan nama fail termampat
    helloworld.jar Nama fail boleh disesuaikan

    Menunjukkan helloworld Untuk semua fail dalam direktori, "." (Tambahan,
    * asterisk juga boleh diterima)

    Bagaimana untuk membungkus projek Java atau Java Web ke dalam pakej JAR atau pakej WARSetakat ini, pembungkusan berjaya, tetapi ia tidak boleh dijalankan. Jika anda mahu ia berfungsi, anda perlu mengubah suai fail

    MANIFEST.MF

    dalam helloword.jar. (3) Gunakan alat penyahmampatan untuk membuka helloword.jar dan edit META-INF/MANIFEST.MF untuk menambah atribut

    MANIFEST.MF keadaan awal

    Manifest-Version: 1.0
    Created-By: 1.8.0_161 (Oracle Corporation)
    Salin selepas log masuk

    Tambah atribut : (

    Perhatikan bahawa kolon ialah kolon Inggeris dan terdapat ruang selepas kolon

    )

    Kelas Utama:

    Kelas yang mengandungi kaedah utama Laluan Kelas:
    Laluan pakej balang bergantung Jika anda bergantung pada berbilang pakej balang, gunakan ruang untuk memisahkannya Laluan: laluan relatif, laluan pakej balang berbanding helloworld. fail jar Laluan mutlak, pakej balang berada dalam sistem pengendalian Laluan
    biasanya digunakan sebagai laluan relatif Letakkan pakej balang bergantung dan pakej balang anda sendiri dalam direktori yang sama, supaya Laluan Kelas boleh terus menulis nama pakej balang bergantung.

    Status selepas menambah atribut:

    Manifest-Version: 1.0
    Created-By: 1.8.0_161 (Oracle Corporation)
    Class-Path: mysql-connector-java-5.1.18.jar
    Main-Class: com.gzn.demo.App
    Salin selepas log masuk

    (4) Jalankan ujian

    Salin kebergantungan ke direktori yang sama seperti helloworld.jar dan gunakan java -jar helloworld.jar untuk menjalankan program .


    Bagaimana untuk membungkus projek Java atau Java Web ke dalam pakej JAR atau pakej WAR

    Bagaimana untuk membungkus projek Java atau Java Web ke dalam pakej JAR atau pakej WARJika pakej balang hanya untuk digunakan oleh pembangun lain dan tidak perlu dijalankan, teruskan ke langkah (2) .

    1. 2. Gunakan IDEA untuk pembungkusan

    Bagaimana untuk membungkus projek Java atau Java Web ke dalam pakej JAR atau pakej WAR

    Bagaimana untuk membungkus projek Java atau Java Web ke dalam pakej JAR atau pakej WAR

    Kelas Utama

    : Mengandungi yang utama kaedah Kelas; ekstrak ke JAR sasaran
    : Ekstrak balang sasaran Pilihan ini memerlukan anda mengkonfigurasi laluan mutlak untuk balang bergantung. salin ke direktori output dan pautan melalui manifes
    : Salin balang bergantung ke direktori output, yang merupakan direktori tahap yang sama dengan balang yang dibungkus oleh projek anda. Dengan cara ini, IDEA boleh mengkonfigurasi terus laluan relatif untuk atribut Class-Path dalam MENIFEST.MF.

    Bagaimana untuk membungkus projek Java atau Java Web ke dalam pakej JAR atau pakej WARDirektori Output: Laluan keluaran berpakej.

    Jalankan ujian:

    首先进入jar包输入路径C:\Users\gzn\Desktop\helloworld\out\artifacts\HelloWorld_jar;
    运行 java -jar helloworld.jar;

    Bagaimana untuk membungkus projek Java atau Java Web ke dalam pakej JAR atau pakej WAR

    2、打成war包

    comment是我的一个已将编译好的web项目,使用cmd进入comment目录下执行命令

    jar -cvf comment.war .
    Salin selepas log masuk

    Bagaimana untuk membungkus projek Java atau Java Web ke dalam pakej JAR atau pakej WAR
    注意在项目目录下执行命令, “.” 表示对项目目录下的所有文件进行打包,将打包好的项目复制到Tomcat/webapps目录下,启动Tomcat服务器,就可以进行测试了。

    Atas ialah kandungan terperinci Bagaimana untuk membungkus projek Java atau Java Web ke dalam pakej JAR atau pakej WAR. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

    Kenyataan Laman Web ini
    Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

    Alat AI Hot

    Undresser.AI Undress

    Undresser.AI Undress

    Apl berkuasa AI untuk mencipta foto bogel yang realistik

    AI Clothes Remover

    AI Clothes Remover

    Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

    Undress AI Tool

    Undress AI Tool

    Gambar buka pakaian secara percuma

    Clothoff.io

    Clothoff.io

    Penyingkiran pakaian AI

    Video Face Swap

    Video Face Swap

    Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

    Alat panas

    Notepad++7.3.1

    Notepad++7.3.1

    Editor kod yang mudah digunakan dan percuma

    SublimeText3 versi Cina

    SublimeText3 versi Cina

    Versi Cina, sangat mudah digunakan

    Hantar Studio 13.0.1

    Hantar Studio 13.0.1

    Persekitaran pembangunan bersepadu PHP yang berkuasa

    Dreamweaver CS6

    Dreamweaver CS6

    Alat pembangunan web visual

    SublimeText3 versi Mac

    SublimeText3 versi Mac

    Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

    Nombor Sempurna di Jawa Nombor Sempurna di Jawa Aug 30, 2024 pm 04:28 PM

    Panduan Nombor Sempurna di Jawa. Di sini kita membincangkan Definisi, Bagaimana untuk menyemak nombor Perfect dalam Java?, contoh dengan pelaksanaan kod.

    Weka di Jawa Weka di Jawa Aug 30, 2024 pm 04:28 PM

    Panduan untuk Weka di Jawa. Di sini kita membincangkan Pengenalan, cara menggunakan weka java, jenis platform, dan kelebihan dengan contoh.

    Nombor Smith di Jawa Nombor Smith di Jawa Aug 30, 2024 pm 04:28 PM

    Panduan untuk Nombor Smith di Jawa. Di sini kita membincangkan Definisi, Bagaimana untuk menyemak nombor smith di Jawa? contoh dengan pelaksanaan kod.

    Soalan Temuduga Java Spring Soalan Temuduga Java Spring Aug 30, 2024 pm 04:29 PM

    Dalam artikel ini, kami telah menyimpan Soalan Temuduga Spring Java yang paling banyak ditanya dengan jawapan terperinci mereka. Supaya anda boleh memecahkan temuduga.

    Cuti atau kembali dari Java 8 Stream Foreach? Cuti atau kembali dari Java 8 Stream Foreach? Feb 07, 2025 pm 12:09 PM

    Java 8 memperkenalkan API Stream, menyediakan cara yang kuat dan ekspresif untuk memproses koleksi data. Walau bagaimanapun, soalan biasa apabila menggunakan aliran adalah: bagaimana untuk memecahkan atau kembali dari operasi foreach? Gelung tradisional membolehkan gangguan awal atau pulangan, tetapi kaedah Foreach Stream tidak menyokong secara langsung kaedah ini. Artikel ini akan menerangkan sebab -sebab dan meneroka kaedah alternatif untuk melaksanakan penamatan pramatang dalam sistem pemprosesan aliran. Bacaan Lanjut: Penambahbaikan API Java Stream Memahami aliran aliran Kaedah Foreach adalah operasi terminal yang melakukan satu operasi pada setiap elemen dalam aliran. Niat reka bentuknya adalah

    TimeStamp to Date in Java TimeStamp to Date in Java Aug 30, 2024 pm 04:28 PM

    Panduan untuk TimeStamp to Date di Java. Di sini kita juga membincangkan pengenalan dan cara menukar cap waktu kepada tarikh dalam java bersama-sama dengan contoh.

    Program Java untuk mencari kelantangan kapsul Program Java untuk mencari kelantangan kapsul Feb 07, 2025 am 11:37 AM

    Kapsul adalah angka geometri tiga dimensi, terdiri daripada silinder dan hemisfera di kedua-dua hujungnya. Jumlah kapsul boleh dikira dengan menambahkan isipadu silinder dan jumlah hemisfera di kedua -dua hujungnya. Tutorial ini akan membincangkan cara mengira jumlah kapsul yang diberikan dalam Java menggunakan kaedah yang berbeza. Formula volum kapsul Formula untuk jumlah kapsul adalah seperti berikut: Kelantangan kapsul = isipadu isipadu silinder Dua jumlah hemisfera dalam, R: Radius hemisfera. H: Ketinggian silinder (tidak termasuk hemisfera). Contoh 1 masukkan Jejari = 5 unit Ketinggian = 10 unit Output Jilid = 1570.8 Unit padu menjelaskan Kirakan kelantangan menggunakan formula: Kelantangan = π × r2 × h (4

    Cipta Masa Depan: Pengaturcaraan Java untuk Pemula Mutlak Cipta Masa Depan: Pengaturcaraan Java untuk Pemula Mutlak Oct 13, 2024 pm 01:32 PM

    Java ialah bahasa pengaturcaraan popular yang boleh dipelajari oleh pembangun pemula dan berpengalaman. Tutorial ini bermula dengan konsep asas dan diteruskan melalui topik lanjutan. Selepas memasang Kit Pembangunan Java, anda boleh berlatih pengaturcaraan dengan mencipta program "Hello, World!" Selepas anda memahami kod, gunakan gesaan arahan untuk menyusun dan menjalankan program, dan "Hello, World!" Pembelajaran Java memulakan perjalanan pengaturcaraan anda, dan apabila penguasaan anda semakin mendalam, anda boleh mencipta aplikasi yang lebih kompleks.

    See all articles