Spring 启动共享网络模块(jar 文件覆盖?)
Spring Boot shared web modules (jar file overlay?)
在使用 .war 输出进行 Web 开发之前,可以选择模块化 war 覆盖 http://maven.apache.org/plugins/maven-war-plugin/overlays.html
现在Spring引导采用jar包,如何制作一些共享的网页资源?
那是对 com.company.shared.web
模块的依赖,例如,图像
/com.company.shared.web/src/main/resources/static/images/background-image.png
如何使此映像可用于主模块中的 运行 Spring 启动应用程序? Maven 标准依赖项解析将仅使 Java 类 可用。
P.S。
类似的问题,但是对于 .war 包装是 Spring Boot & Maven war overlay and not resolved https://github.com/spring-projects/spring-boot/issues/1030
Maven Dependency Plugin
您可以使用此插件解压jar依赖包并将文件复制到另一个目录。
在此示例项目中,您有一个父 POM,后跟两个 Jar 包装的 Maven 模块。
- Web-App - Spring 启动应用程序,可执行 Jar,使用 Web-Library 作为 Depdenency 和 Maven Depedency Plugin 从 Web-Library 中提取静态文件并将它们复制到它自己的静态目录
- Web-Library - 包含静态资产的库 Jar,例如 css 和 javascript 文件,这些文件将与其他模块共享,例如 Web-App
说明:
mvn clean package
java -jar web-app/target/web-app-0.0.1-SNAPSHOT.jar
浏览至 localhost:8080 并注意 style.css 和 script.js 已加载,它们来自网络图书馆模块。
在使用 .war 输出进行 Web 开发之前,可以选择模块化 war 覆盖 http://maven.apache.org/plugins/maven-war-plugin/overlays.html
现在Spring引导采用jar包,如何制作一些共享的网页资源?
那是对 com.company.shared.web
模块的依赖,例如,图像
/com.company.shared.web/src/main/resources/static/images/background-image.png
如何使此映像可用于主模块中的 运行 Spring 启动应用程序? Maven 标准依赖项解析将仅使 Java 类 可用。
P.S。 类似的问题,但是对于 .war 包装是 Spring Boot & Maven war overlay and not resolved https://github.com/spring-projects/spring-boot/issues/1030
Maven Dependency Plugin
您可以使用此插件解压jar依赖包并将文件复制到另一个目录。
在此示例项目中,您有一个父 POM,后跟两个 Jar 包装的 Maven 模块。
- Web-App - Spring 启动应用程序,可执行 Jar,使用 Web-Library 作为 Depdenency 和 Maven Depedency Plugin 从 Web-Library 中提取静态文件并将它们复制到它自己的静态目录
- Web-Library - 包含静态资产的库 Jar,例如 css 和 javascript 文件,这些文件将与其他模块共享,例如 Web-App
说明:
mvn clean package
java -jar web-app/target/web-app-0.0.1-SNAPSHOT.jar
浏览至 localhost:8080 并注意 style.css 和 script.js 已加载,它们来自网络图书馆模块。