最近我找到了解决我正在处理的应用程序问题的解决方案。
简单地说:我正在使用maven shade plugin构建我的应用程序,因为JasperReport给了我JRRuntimeException
,我遇到了问题。我通过使用transformers向树荫插件添加配置解决了这个问题。
现在我想知道变形金刚是否接受通配符,因此您不需要将每个文件都包含为资源。例如,我想要像
这样的东西<transformers>
<transformer implementation="org.apache.maven.plugins.shade.resource.ResourceBundleAppendingTransformer">
<!-- every .properties file will be merged (if name repeated elsewhere) -->
<resource>*.*</resource>
</transformer>
</transformers>
我在ResourceBundleAppendingTransformer
使用<basename>
的示例中找到了一些内容,但我不太明白它是如何工作的。
我知道ResourceTransformer
如何运作以及如何配置它以完成我需要的工作,请告诉我。
提前感谢您的回答。
答案 0 :(得分:0)
您不需要使用ResourceBundleAppendingTransformer
指定通配符。它使用一种模式来查找.properties
个语言环境的文件。
例如,如果您的资源束位于src/main/resources/i18n/messages
下,只需按以下方式配置转换器:
<transformer implementation="org.apache.maven.plugins.shade.resource.ResourceBundleAppendingTransformer">
<basename>i18n/messages</basename>
</transformer>