我的应用程序使用了资源文件夹中的一些附加文件。当我使用 Maven 进行常规构建并将我的应用程序打包到 JAR 中时,我可以看到我的所有资源,以防我解压缩此存档。
但是当我创建一个 docker 镜像时,我使用 spring-boot-maven-plugin 来使我的 JAR 存档可执行。由于某种原因,我的资源没有被添加到新的重新打包的 JAR中。此外,我什至无法解压缩它,因为它已损坏。
这是我在 pom.xml 中设置重新打包目标的方式:
<id>prod</id>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<version>1.5.3.RELEASE</version>
<configuration>
<mainClass>ApplicationName</mainClass>
<executable>true</executable>
<arguments>
<argument>--spring.profiles.active=prod</argument>
</arguments>
<!--<addResources>true</addResources>-->
</configuration>
<executions>
<execution>
<goals>
<goal>repackage</goal>
</goals>
<configuration>
<!--<includeSystemScope>true</includeSystemScope>-->
<!--<layout>JAR</layout>-->
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
我想补充一点,当我在 docker 中运行我的图像时,它工作正常,但所有需要的资源都丢失了。
有没有人遇到同样的问题?或者,也许您可以建议如何解决它。