spring_reference/IX. ‘How-to’ guides/73.4. Extract specific libr...

30 lines
1.2 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

### 73.4. 在可执行jar运行时提取特定的版本
在一个可执行jar中为了运行多数内嵌的库不需要拆包unpacked然而有一些库可能会遇到问题。例如JRuby包含它自己的内嵌jar它假定`jruby-complete.jar`本身总是能够直接作为文件访问的。
为了处理任何有问题的库你可以标记那些特定的内嵌jars让它们在可执行jar第一次运行时自动解压到一个临时文件夹中。例如为了将JRuby标记为使用Maven插件拆包你需要添加如下的配置
```xml
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<requiresUnpack>
<dependency>
<groupId>org.jruby</groupId>
<artifactId>jruby-complete</artifactId>
</dependency>
</requiresUnpack>
</configuration>
</plugin>
</plugins>
</build>
```
使用Gradle完全上述操作
```gradle
springBoot {
requiresUnpack = ['org.jruby:jruby-complete']
}
```