Java 为什么spring boot在源代码资源中修改jar?
我的弹簧靴结构如下:Java 为什么spring boot在源代码资源中修改jar?,java,maven-plugin,Java,Maven Plugin,我的弹簧靴结构如下: /src/main/resources/ +- /lib +- logback-classic-1.1.9-source.jar +- logback-classic-1.1.9.jar 我用的pom是: <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId>
/src/main/resources/
+- /lib
+- logback-classic-1.1.9-source.jar
+- logback-classic-1.1.9.jar
我用的pom是:
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
<resources>
<resource>
<directory>src/main/resources/</directory>
<filtering>true</filtering>
<includes>
<include>**/*</include>
</includes>
</resource>
</resources>
</build>
为了将movejar排除在战争之外,我只想知道我的代码有什么问题,让spring引导在参考资料中更改我的jar
我还尝试了spring项目,在这种情况下,一切都很好!我的jar在war文件中没有更改。您在src/main/resources路径下有lib,它们是在过滤设置为true的情况下复制的。因此,在复制资源的过程中,如果它们包含格式为
${…}
的字符串,则会对其进行修改
第一个解决方案是不将jar作为资源。你真的需要在你的最终作品中的源jar吗?如果没有,请删除此lib文件夹并向logback classic jar添加依赖项:
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<version>1.1.9</version>
</dependency>
我将过滤改为false,问题就解决了。你是对的!非常感谢你!然后,请友好地接受答案(单击左侧的灰色复选标记)。谢谢,但是对于提出问题并获得此问题答案的qho来说,StackOverflow的正确方法是接受答案。请参见。作为新用户,您还没有投票权。
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<version>1.1.9</version>
</dependency>
<resources>
<resource>
<directory>src/main/resources/</directory>
<filtering>true</filtering>
<includes>
<include>**/*</include>
</includes>
<excludes>
<exclude>lib</exclude>
</excludes>
</resource>
<resource>
<directory>src/main/resources/lib</directory>
<filtering>false</filtering>
<includes>
<include>**/*</include>
</includes>
</resource>
</resources>