Maven Assembly Plugin Merge Strategy
我正在尝试将Scala / Java项目构建从sbt转换为Maven。我已经开始运行该项目,除了尝试打包胖子罐时没有任何问题。
尝试编写合并策略时遇到一些问题。这是我尝试从build.sbt转换的代码:
1 2 3 4 5 | assemblyMergeStrategy in assembly := { case PathList("META-INF","MANIFEST.MF") => MergeStrategy.discard case PathList("META-INF", xs @ _*) => MergeStrategy.first case x => MergeStrategy.first } |
我正在尝试将Maven的程序集插件与自定义描述符一起使用。我一直在使用提供的容器描述符处理程序,但是没有一个像sbt那样合并。这是我到目前为止的内容:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 | <assembly xmlns="http://maven.apache.org/ASSEMBLY/2.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/ASSEMBLY/2.0.0 http://maven.apache.org/xsd/assembly-2.0.0.xsd"> <id>my-project</id> <formats> <format>jar</format> </formats> <includeBaseDirectory>false</includeBaseDirectory> <dependencySets> <dependencySet> <outputDirectory>/</outputDirectory> <useProjectArtifact>true</useProjectArtifact> <unpack>true</unpack> <scope>runtime</scope> </dependencySet> </dependencySets> <containerDescriptorHandlers> <containerDescriptorHandler> <handlerName>metaInf-services</handlerName> </containerDescriptorHandler> <containerDescriptorHandler> <handlerName>metaInf-spring</handlerName> </containerDescriptorHandler> <containerDescriptorHandler> <handlerName>plexus</handlerName> </containerDescriptorHandler> </containerDescriptorHandlers> |
有什么方法可以从sbt构建中模拟MergeStrategy吗?
在我从Maven迁移到SBT的"冒险"期间,我认为我也碰到了类似的问题,我可以提供一些见识。
您可以选择一个,或两者都选:
- 阅读我的问题的答案
- 看看我的github项目,它挖掘了这个主题
摘要
由于您应该担心的唯一
除非我缺少任何内容,否则请提供更多详细信息。