Solución de problemas de carga de Spring Boot Jar

¿Ha encontrado el problema de iniciar un nuevo archivo Spring Boot?
En general, la innovación en esta dirección no es la primera, no hay estándares especiales. Por lo tanto, mucha gente toma problemas y los resuelve en foros y desborda la pila.
Si también encuentra un problema, lo ayudaré a resolverlo. En este caso, sigue leyendo.
, BootJar . , .
. — JSP . JSP? , - , , .
( ):
/src/main/ java/ resources/ static/ some.html public/ webapp/ WEB-INF/jsp index.jsp
BootJar / BootWar, jsp BootJar . BootWar. , . , — , , , . BootRun , .
, : , .
, . BootJar. , … ! , 302 + 404 ( ). .
— , , , webjars. ???
. jsp BootJar, BootWar. … . , .
, . BootJar — . .
: Spring Boot , . — . ! .
. — BootJar (webjars), , , , , ! , .
— - static/, public/. , . jsp . , . , ( ), jsp . jsp ,
spring.resources.static-locations
.
, , , . , ( webapp/), , , — META-INF/resources, . BootJar. .
? -, -, , . — . , . , .
-? -, , , -, . , . , : — , , .
. . , , classpath.
, . ?
.
- spring- . , , , jsp .
- . : spring-, , — , , . , .
- — BootJar.
sourceSets {
jsp {
resources.source(sourceSets.main.resources);
resources.srcDirs += ['src/main/webapp'];
}
jmh {
.. ..
}
}
task jsp(type: Jar, description: 'JSP Packaging') {
archiveBaseName = 'jsp'
group = "build"
def art = sourceSets.jsp.output
from(art) {
exclude('META-INF')
into('META-INF/resources/')
}
from(art) {
include('META-INF/*')
into('/')
}
dependsOn(processJspResources)
}
processJspResources , . :
bootJar {
dependsOn(jsp)
bootInf.with {
from(jsp.archiveFile) {
include('**/*.jar')
}
into('lib/')
}
}
No pude encontrar cómo agregarlo de otra manera (directa): es imposible conectar la configuración jspImplementation del proyecto en sí dependiendo de las dependencias, pero me gustaría hacerlo. Pero si todavía lo tomamos de otro módulo, seguimos haciendo esto:
artifacts { jspImplementation jsp }
Eso es todo, ahora tenemos una biblioteca de recursos, que, de acuerdo con todos los estándares, el tomkat debe cargar y carga. Ejecútelo como BootJar.