首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >是否可以通过配置从具有相同jar名称和控件的不同目录中发布jar?

是否可以通过配置从具有相同jar名称和控件的不同目录中发布jar?
EN

Stack Overflow用户
提问于 2015-07-01 14:06:31
回答 1查看 32关注 0票数 0

我试图在遗留系统的构建过程中添加一些常春藤依赖管理,这样我们就可以在下游项目和开发环境中以比目前更好的方式来管理我们生产的人工制品。然而,我们的一个构建(让我们称之为模块-X)在两个不同的目录中生成两个不同版本的jar文件,以便在基于批处理和基于浏览器的应用程序中使用,以及这两个应用程序使用的一些常见的人工制品。即:

  • bin\batch\DataObjects.jar -这是由批处理使用的
  • bin\browser\DataObjects.jar -它由基于浏览器的应用程序使用
  • bin\common* -批处理和浏览器使用的jars

我想设置常春藤:发布,以便我们能够使用browser\DataObjects.jar时,依赖于模块-X的浏览器配置和batch\DataObjects.jar时使用批处理配置,这可以使用单个模块吗?还是我最好拥有多个ivy.xml模块描述符,并将它们作为单独的模块发布/使用?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-07-01 18:45:19

这个问题最好由您的发布管理计划来回答。这些文件是否一起发布,并且应该有相同的修订号?另一方面,如果每个工件都有自己的生命,并且可以单独发布,那么最好建议使用单独的模块。

为了帮助你做出决定,你可以问自己以下问题。如果更改了源文件,这会导致需要重新编译两个二进制文件吗?如果是的话,一起释放。如果不是,那么单独发布它们可能会更简单。

最后,是的,当将多个文件作为同一模块的一部分发布时,可以设置两个配置,以便在依赖映射中分别下载每个文件。

代码语言:javascript
复制
<ivy-module version="2.0" xmlns:m="http://ant.apache.org/ivy/maven">
   <info organisation="org.demo" module="myfiles"/>

   <configurations>
      <conf name="default" extends="master,sources,javadoc"/>
      <conf name="master" description="contains only the artifact published by this module itself, with no transitive dependencies"/>
      <conf name="sources" description="this configuration contains the source artifact of this module, if any."/>
      <conf name="javadoc" description="this configuration contains the javadoc artifact of this module, if any."/>
   </configurations>
   <publications>
      <artifact name="myfile" type="jar" ext="jar" conf="master"/>
      <artifact name="myfile" type="source" ext="jar" conf="sources" m:classifier="sources"/>
      <artifact name="myfile" type="javadoc" ext="jar" conf="javadoc" m:classifier="javadoc"/>
   </publications>
   <dependencies>
   ..
   </dependencies>
</ivy-module>
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31163669

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档