Hola a todos, soy un pato:
Compartir hoy en springboot el paquete paquete jar en el directorio especificado.
Debido a que las líneas están ante un abarrotado en un frasco, debido a la multi-servicio, y un paquete de más de 100 m, aunque sea una pequeña versión de la línea tendrá que volver a cargar el paquete frasco.
1. Objeto
No se utilizará como la primavera, no druida utilizado comúnmente para lib directorio del paquete, de modo que cada uno de estos en línea no tiene que cargar. Tercero o cambios a menudo también se empaquetan en el propio paquete frasco, cada vez que se envasa una nueva línea.
Tal paquete frasco original M 100, puede convertirse en 2,3m.
Como se muestra:
el original se empaquetan
Después de cambiar el modo:
2. Modificar pom
Brevemente, la etiqueta está dentro incluye un paquete de terceros en el frasco frasco. Después de que el paquete por encima de 2M paquete compresión solución que incluye. Como se muestra en la figura.
excludeGroupIds y excludeArtifactIds no está configurado lib directorio del paquete, debido al mecanismo de java para cargar el cargador de arranque es un paquete frasco de prioridad,
y luego cargar un directorio externo, si el paquete frasco hay dos lugares, por lo que la configuración no tiene sentido, cada uno todavía tiene que volver directorio lib publicado, será incluye
en el paquete y, a continuación, en excludeGroupIds y excludeArtifactIds configuración .
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<version>2.0.5.RELEASE</version>
<executions>
<execution>
<goals>
<goal>repackage</goal>
<goal>build-info</goal>
</goals>
</execution>
</executions>
<configuration>
<layout>ZIP</layout>
<includes>
<include>
<groupId>nothing</groupId>
<artifactId>nothing</artifactId>
</include>
<include>
<groupId>com.etc</groupId>
<artifactId>etc-manage-api</artifactId>
</include>
<include>
<groupId>com.etc</groupId>
<artifactId>etc-manage-core</artifactId>
</include>
<include>
<groupId>com.etc</groupId>
<artifactId>etc-manage-rpc-api</artifactId>
</include>
<include>
<groupId>com.sinoiov.etc.apollo</groupId>
<artifactId>apollo-spring-boot-starter</artifactId>
</include>
</includes>
</configuration>
</plugin>
<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>
<excludeGroupIds>
com.sinoiov.etc.apollo
</excludeGroupIds>
<excludeArtifactIds>
etc-manage-api,etc-manage-core,etc-manage-rpc-api
</excludeArtifactIds>
<outputDirectory>${project.build.directory}/lib</outputDirectory>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
3. Modificar el script de inicio
guión original
java -jar etc-manage-service-basic-2.2.0.jar
Ahora el guión (si es relativamente difícil de usar directorio, intente utilizar el directorio absoluto)
java Dloader.path=../lib -jar etc-manage-service-basic-2.2.0.jar