Maison > Java > javaDidacticiel > le corps du texte

Quelle est la méthode d'empaquetage du pot dans le projet Java Maven ?

WBOY
Libérer: 2023-04-29 18:31:14
avant
2545 Les gens l'ont consulté

Le packaging Maven peut généralement générer deux types de packages : l'un est un package qui peut être exécuté directement et l'autre est un package dépendant (juste un package compilé). Les packages Maven sont jar par défaut, si vous devez modifier d'autres types. Pom.xml peut être modifié

<packaging>jar/ear/ejb</packaging>
Copier après la connexion

Les plug-ins introduits par défaut dans les projets Maven :

Quelle est la méthode dempaquetage du pot dans le projet Java Maven ?

1 Jar général (ne peut pas s'exécuter)

Le jar généré est juste un package compilé et. n'emballe pas le sac de pots dépendants. Il ressort du journal de compilation de la console que le plug-in maven-jar-plugin:2.4 est utilisé.插java compile plug-in, vous pouvez définir la version du JDK, etc. (Si vous ne définissez pas la valeur par défaut, vous pouvez définir le

<!-- java编译插件 -->
<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-compiler-plugin</artifactId>
    <configuration>
        <source>1.8</source>
        <target>1.8</target>
        <encoding>UTF-8</encoding>
    </configuration>
</plugin>
Copier après la connexion

méthode 1 : méthode de ligne de commande L'exécution de la console MVN CLEAN Package

Méthode 2 : Utilisation de la souris Maven->Plugins->clean->package

2. pot peut généralement être généré directement via java -jar Exécuter directement Méthode 1 : framework SpringBoot (dépend dans jar)

Cette méthode est empaquetée à l'aide du plugin spring-boot-maven

Étape 1. : pom.xml Ajoutez

<plugin>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-maven-plugin</artifactId>
    <version>2.4.0</version>
    <configuration>
        <fork>true</fork>
        <!--指定启动的入口,可以省略,springboot会自动查找启动类-->
        <mainClass>com.lx.buildjarpackage.BuildJarPackageApp</mainClass>
    </configuration>
</plugin>
Copier après la connexion

Quelle est la méthode dempaquetage du pot dans le projet Java Maven ?Étape 2 : Exécution de la console

mvn clean package spring-boot:repackage

Remarque : Si le parent (facultatif) est spécifié dans le fichier pom actuel

<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>2.4.0</version>
</parent>
Copier après la connexion
La commande de console n'a besoin que à exécuter

mvn clean package

Méthode 2 : Séparer les packages dépendants et les packages de projet (dépend du répertoire externe lib)

Quelle est la méthode dempaquetage du pot dans le projet Java Maven ?

Sortie du package JAR dépendant dans le répertoire lib (la méthode d'empaquetage est commun pour les projets JAVA). Cette méthode nécessite l'introduction du plug-in maven-jar-plugin

Étape 1 : Ajouter pom.xml
<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-jar-plugin</artifactId>
    <configuration>
        <archive>
            <manifest>
                <addClasspath>true</addClasspath>
                <classpathPrefix>lib/</classpathPrefix>
                <mainClass>com.lx.buildjarpackage.BuildJarPackageApp</mainClass>
            </manifest>
        </archive>
    </configuration>
</plugin>
Copier après la connexion

Étape 2 : Exécution de la console

mvn clean dependency:copy. -dependencies -DoutputDirectory=target/lib package

Remarque : Si nous simplifions la commande d'exécution de la console, nous pouvons ajouter la configuration du plug-in

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-dependency-plugin</artifactId>
    <executions>
        <execution>
            <id>copy</id>
            <phase>package</phase>
            <goals>
                <goal>copy-dependencies</goal>
            </goals>
            <configuration>
                <outputDirectory>${project.build.directory}/lib</outputDirectory>
            </configuration>
        </execution>
    </executions>
</plugin>
Copier après la connexion
puis exécuter la console

mvn clean package

Méthode 3 : Packages et projets dépendants dans un seul pot (projet non Springboot)

Cette méthode utilise le plug-in maven-assembly-plugin, mais cette méthode ne copie pas le pot dépendant dans le pot final, mais copie le fichier de classe de le pot dépendant au pot final, donc cette méthode sera perdue. Certains fichiers de ressources, donc le projet Springboot ne démarrera pas

Étape 1 : Ajouter pom (colonne de droite) ->Sélectionner les plugins->Sélectionner l'assemblage->. ;Cliquez sur assembly:assemblyQuelle est la méthode dempaquetage du pot dans le projet Java Maven ?

Résumé : Seules la méthode 1 et la méthode 2 peuvent être utilisées pour que les projets Springboot démarrent normalement.

3. Packaging du projet Scala

La première étape : ajoutez

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-assembly-plugin</artifactId>
    <version>2.5.5</version>
    <configuration>
        <archive>
            <manifest>
                <mainClass>com.lx.buildjarpackage.BuildJarPackageApp</mainClass>
            </manifest>
        </archive>
        <descriptorRefs>
            <descriptorRef>jar-with-dependencies</descriptorRef>
        </descriptorRefs>
    </configuration>
</plugin>
Copier après la connexion

au build>plugins de la barre pom) ->Sélectionnez Lifecycle->Cliquez sur le package ou installez-le dans le package

4. packaging

Quelle est la méthode dempaquetage du pot dans le projet Java Maven ?

Étape 1 : Ajoutez

<plugin>
    <groupId>org.scala-tools</groupId>
    <artifactId>maven-scala-plugin</artifactId>
    <executions>
        <execution>
            <goals>
                <goal>compile</goal>
                    <goal>testCompile</goal>
                </goals>
        </execution>
    </executions>
    <configuration>
        <scalaVersion>${scala.version}</scalaVersion>
        <args>
            <arg>-target:jvm-1.5</arg>
        </args>
    </configuration>
</plugin>
Copier après la connexion

au build>plugins de pom.xml Étape 2 : Exécution de la console

maven clean package

ou exécutez le projet maven avec la souris (colonne de droite) ->Sélectionnez Cycle de vie -> Cliquez sur le package ou installez-le sur le package

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:yisu.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal