如何使用 gradle 在 Spring-Boot 项目的类路径中包含 zip 内容?
How to include zip content in Spring-Boot project's classpath using gradle?
各位软件工程师,大家好,
我有以下情况。
此时,我有一个 spring-boot 项目,其中包含一个捆绑的 Web 应用程序 (React),其构建的源文件存储在 resources/static
目录下。
文件结构基本上是这样的:
main
|----java
| |---
|---resources
| |---static
| |---static
| |---css,js...
| |---index.html
| |---...
| |---otherResources
我们已经到了以 Nexus 上 zip
文件的形式上传网络应用程序的地步。
groupId: my.project / artifactId: my-web-app / version: 1.0 / ext: zip
my-web-app-1.0.zip
|---static
|---css,js...
|---index.html
|---...
现在我想从我的存储库(资源)中删除重复的文件,并用 zip 文件的内容替换它们。
我不确定如何使用 spring-boot 和 gradle 实现此目的,请提供一些指导。
谢谢
您必须加载 zip 和 unzip ,然后替换 source:
main {
resources {
srcDir 'src'
}
}
为了得到完全相同的结构,我做了这样的事情:
build.gradle
configurations {
webAppZip
}
dependencies {
// other dependencies
webAppZip(group: 'my.project', name: 'my-web-app', version: 1.0, ext: 'zip')
}
task unzip(type: Copy) {
var webAppLocation = "src/main/resources/static"
delete webAppLocation
from zipTree(configurations.webAppZip.singleFile)
into webAppLocation
}
processResources {
dependsOn(unzip)
}
另外可以将 static
目录添加到 .gitignore
文件。
各位软件工程师,大家好,
我有以下情况。
此时,我有一个 spring-boot 项目,其中包含一个捆绑的 Web 应用程序 (React),其构建的源文件存储在 resources/static
目录下。
文件结构基本上是这样的:
main
|----java
| |---
|---resources
| |---static
| |---static
| |---css,js...
| |---index.html
| |---...
| |---otherResources
我们已经到了以 Nexus 上 zip
文件的形式上传网络应用程序的地步。
groupId: my.project / artifactId: my-web-app / version: 1.0 / ext: zip
my-web-app-1.0.zip
|---static
|---css,js...
|---index.html
|---...
现在我想从我的存储库(资源)中删除重复的文件,并用 zip 文件的内容替换它们。
我不确定如何使用 spring-boot 和 gradle 实现此目的,请提供一些指导。
谢谢
您必须加载 zip 和 unzip ,然后替换 source:
main {
resources {
srcDir 'src'
}
}
为了得到完全相同的结构,我做了这样的事情:
build.gradle
configurations {
webAppZip
}
dependencies {
// other dependencies
webAppZip(group: 'my.project', name: 'my-web-app', version: 1.0, ext: 'zip')
}
task unzip(type: Copy) {
var webAppLocation = "src/main/resources/static"
delete webAppLocation
from zipTree(configurations.webAppZip.singleFile)
into webAppLocation
}
processResources {
dependsOn(unzip)
}
另外可以将 static
目录添加到 .gitignore
文件。