如何使用Maven创建不同风格的构建
我想用maven构建我的anndroid项目 有3个项目如何使用Maven创建不同风格的构建,maven,maven-3,maven-plugin,maven-assembly-plugin,Maven,Maven 3,Maven Plugin,Maven Assembly Plugin,我想用maven构建我的anndroid项目 有3个项目 项目-A(jar文件) 项目-B(jar文件) 项目-C(sdk包) 项目C取决于B 项目B取决于A 对于maven,我想发布两种风格的ByBuild 1st flavor:从B释放罐子(其中包含来自B&A的代码) Second flavor:从C发布SDK(其中包含来自C&B&A的代码) 我可以从MAVEN控制这种行为。对于“第一风格”,您可以使用MAVEN程序集插件和预定义的desriptorjar以及依赖项,将所有依赖项嵌入到项
项目-A(jar文件) 项目-B(jar文件) 项目-C(sdk包)
项目C取决于B 项目B取决于A 对于maven,我想发布两种风格的ByBuild 1st flavor:从B释放罐子(其中包含来自B&A的代码) Second flavor:从C发布SDK(其中包含来自C&B&A的代码) 我可以从MAVEN控制这种行为。对于“第一风格”,您可以使用
MAVEN程序集插件
和预定义的desriptor
jar以及依赖项
,将所有依赖项嵌入到项目的jar中,但也要注意可以嵌入其中的可传递依赖项。否则,您也可以使用maven shade插件
,它有一些您可能感兴趣的选项,比如minimizeJar
,以及一种更简单的方法来配置include和excludes()
对于“第二种风格”,使用
maven汇编插件将与其bin
描述符相匹配,或者如果需要包含其他文件,可以定义自己的描述符()。您可以找到一些关于如何配置和使用maven assembly插件的示例
(您也可以查看我已经回答的关于该插件的问题)看看maven配置文件。这可能是您所需要的。您是希望两者都是一个构建的结果,还是希望选择要构建哪一个?JAR不包含来自其他项目的类/代码,所以您谈论的是具有依赖项的JAR(fatjar/ueberjar)。。。