我在考虑将我管理的Maven项目转移到Apache-Ant/Ivy。我需要更多地控制构建过程,并对Maven感到非常沮丧。请不要评论Maven有多好。我的问题是关于Ivy的。
我想设置一个“标准”的Ant构建模板,稍作修改后即可用于其他项目。
我将设置一个中央的“企业”代码库,我们可以将不在公共Maven代码库中的第三方库(例如商业库、Sun库、专有库等)放置在其中。该企业代码库将在我们本地局域网上可用,但可能无法从办公室外部访问。
每个开发人员都将拥有一个私有repository,位于
在
每个项目将遵循标准的Maven目录结构:
过去,我尝试使用Ivy,但Ant构建文件变得非常大(模板构建文件> 500行),难以管理/编辑。我希望通过将标准目标放在
这可以做到吗?我错了吗?我只能在Apache网站(http://ant.apache.org/ivy)上找到关于Ivy的文档。是否有其他可用的文档,包括书籍?
我想设置一个“标准”的Ant构建模板,稍作修改后即可用于其他项目。
我将设置一个中央的“企业”代码库,我们可以将不在公共Maven代码库中的第三方库(例如商业库、Sun库、专有库等)放置在其中。该企业代码库将在我们本地局域网上可用,但可能无法从办公室外部访问。
每个开发人员都将拥有一个私有repository,位于
~/.ivy/repository
。我希望Ant构建自动从企业代码库更新此私有repository中的库变更版本。在
~/.ivy/ant
中,我计划放置“标准”模块,以包含在个人项目的build.xml
文件中,使用Ant 1.8中的include
任务。这些模块将提供各种Scala和Clojure编译目标,不同版本的Scala和Clojure将有不同的版本(例如:scala-compile-2.9.1.xml
,clojure-compile-1.3.xml
等)构建模块可在企业repository中使用,并且如果更改,应自动更新私有repositories中的模块。每个项目将遵循标准的Maven目录结构:
${project}/src/main/java
,${project}/target/classes
等。过去,我尝试使用Ivy,但Ant构建文件变得非常大(模板构建文件> 500行),难以管理/编辑。我希望通过将标准目标放在
~/.ivy/ant
目录中的它们自己的构建模块中来避免代码膨胀。这可以做到吗?我错了吗?我只能在Apache网站(http://ant.apache.org/ivy)上找到关于Ivy的文档。是否有其他可用的文档,包括书籍?