Aquí resumimos las diversas formas de usar los paquetes de Idea to Packing Jar. Puede consultar el siguiente formulario para futuros proyectos para empaquetar paquetes jar:
Use el método de embalaje propio de Idea:
Abra el archivo de Idea -> Estructura del proyecto e ingrese la página de configuración del proyecto. Como se muestra en la figura a continuación:
Haga clic en Artefactos para ingresar la página de configuración de artefactos, haga clic en + y seleccione las opciones en la figura a continuación.
Ingrese la página Crear jar desde los módulos y configúrelo como se muestra en la figura a continuación.
Después de hacer clic en Aceptar , aparece la siguiente interfaz. Haga clic con el botón derecho <Output Root>, haga clic en Crear directorio , crear un LIBS y colocar todos los frascos de terceros en el directorio LIBS.
Después del éxito, como se muestra en la siguiente figura:
Después de colocar, haga clic en el nombre del fras que queremos escribir, que es kafka-cps.jar y seleccione classPath para la configuración.
Los resultados editados son los siguientes:
Todos los frascos están escritos en libs/ . Haga clic en Aceptar para volver a la página de configuración.
Al mismo tiempo, tenga en cuenta que en la página de configuración, verifique la compilación en hacer
Finalmente, haga clic en Aceptar en la página de configuración para completar la configuración. Volver a la idea, haga clic en Build-> Build Artifacts y Seleccione Build
Se generará el paquete jar que necesitamos. Su ubicación está en /out/artifacts/kafka_cps_jar en el directorio de salida del directorio del proyecto.
El siguiente es un contenido de archivo manifiesto correctamente configurado
Paquete con maven-shade-plugin
El proceso de empaque anterior es realmente demasiado engorroso y no aprovecha las características de los proyectos de gestión de Maven. Para hacer esto, estamos utilizando el complemento Maven-Shade-Plugin en Maven aquí. En pom.xml, agregamos la siguiente información para agregar el complemento.
<glugin> <proupid> org.apache.maven.plugins </groupid> <artifactid> maven-shade-plugin </artifactid> <versión> 1.4 </versión> <nuence> <FREETEPENDENDENDEDUCEDUCEDPOM> verdadero </createdEdeducedPom> </figuration> <secution> <base> paquete </fase> <cutor> <cutor> whade Whade Whade <Configuration> <RAformers> <Transformer Implementation = "org.apache.maven.plugins.shade.resource.manifestreseurcetransformer"> <inclass> main.main </mainclass> </transformer> </transformers> </figuration> </secution> </ececulions> </tugin>
Hay una etiqueta de 'configuración'. Hay una etiqueta de transformador debajo de esta etiqueta para configurar la entrada a la función principal ( <inclass> main.main </mainclass> ). Por supuesto, el contenido de esta etiqueta es muy complicado, no tan simple como se escribe anteriormente. La razón por la cual lo anterior es tan simple es que solo hay un método principal en todas las clases (incluidos los frascos de terceros). Si hay un método principal en un jar de terceros, se requiere una configuración adicional. La configuración anterior puede no tener éxito.
Después de agregar este código a pom.xml, podemos usar el comando Maven para empaquetarlo. Las instrucciones son las siguientes:
MVN Clean Compile // Borre el archivo de compilación de destino anterior y recompile el paquete MVN Clean // Paquete el proyecto (porque el complemento está configurado, el paquete JAR es ejecutable) MVN Clean Install // Installe el proyecto, y luego puede usarlo
Luego ejecutarlo a través de Java -jar cps-1.0-snapshot.jar .
Si usa Idea, puede usar la herramienta de administración Maven incluida para ejecutar el comando anterior en su lugar. Como se muestra en la figura a continuación, haga clic en la parte azul a su vez.
Paquete con Maven-Assembly-Plugin
También debemos hacer clic en muchos comandos para empaquetar el método anterior. Esta vez, utilizando un nuevo complemento, puede ser más fácil de empaquetar. Del mismo modo, agregue el siguiente código a pom.xml. Se puede eliminar el código de complemento Maven-shade-Plugin anterior. Es mejor no escribir 2 códigos complementarios.
<glugin> <artifactid> maven-assembly-plugin </artifactid> <ververy> 2.4 </ververse> <nuguantation> <ScriptorRefs> <ScriptorRefs> <ScriptorRef> jar-with-dependencies </descriptorRef> </descriptorRefs> <changeVe> <Manifest> <RainClass> Main.Main </MainClain </MainClain </MainClain </MainClain </MainClain </MainClain </MainClas </Archive> </figuration> <secution> <id> Make-Assembly </id> <fase> paquete </fase> <pets> <putal> single </putal> </metas> </secution> </ejecutions> </tugin>
Aquí también hay una etiqueta manifiesta para configurar la entrada a la función principal. Luego use las siguientes instrucciones para realizar el embalaje.
mvn assembly:assembly
Si usa Idea, puede usar la herramienta de administración Maven incluida para ejecutar el comando anterior en su lugar. Como se muestra en la figura a continuación, haga clic en la sección azul.
Luego se ejecute ejecutando java -jar cps-1.0-snapshot-jar-with-dependencies.jar .
Lo anterior es todo el contenido de este artículo. Espero que el contenido de este artículo sea de ayuda para el estudio o el trabajo de todos. ¡También espero apoyar a Wulin.com más!