WEB开发网
开发学院软件开发Java ivy教程(8)-使用ivy模块配置 阅读

ivy教程(8)-使用ivy模块配置

 2009-10-08 00:00:00 来源:WEB开发网   
核心提示:这个教程介绍ivy文件中的模块配置的使用,ivy模块配置事实上是一个非常重要的概念,ivy教程(8)-使用ivy模块配置,某些人甚至告诉我使用ivy而不用ivy配置就像吃乳酪而不动就在你旁边的Chateau Margaux 1976!严肃的说,ivy中的配置可以更好的理解为你的模块的视图,在运行时可以使用两个实现中的任

这个教程介绍ivy文件中的模块配置的使用。ivy模块配置事实上是一个非常重要的概念。某些人甚至告诉我使用ivy而不用ivy配置就像吃乳酪而不动就在你旁边的Chateau Margaux 1976!

严肃的说,ivy中的配置可以更好的理解为你的模块的视图,你将可以看到在这里他们将如何被高效地使用。

关于配置的参考文件可以在这里和这里找到。

1) Introduction

源文件在这里 src/example/configurations/multi-projects.

我们有两个项目:

- filter-framework 是一个类库,定义一个api来过滤字符串数组,这个api有两个实现.

- myapp 是一个使用filter-framework的非常小的应用.

这个类库产生3个制品:

- api的jar

- 一个没有外部依赖的实现的jar

- 另一个需要commons-collections来执行的实现jar

应用仅仅需要api来编译,在运行时可以使用两个实现中的任意一个。

2) 类库项目

在这个教程中我们定义的第一个项目是filter-framework.

为了得到一个良好处理的制品发布定义,我们定义配置来计划让其他人使用我们的类库的使用方式。

1. ivy.xml 文件

<ivy-module version="1.0">
    <info organisation="org.apache" module="filter-framework"/>
    <configurations>
        <conf name="api"  description="only provide filter framework API"/>
        <conf name="homemade-impl" extends="api" description="provide a home made implementation of our api"/>
        <conf name="cc-impl" extends="api" description="provide an implementation that use apache common collection
framework"/>
        <conf name="test" extends="cc-impl" visibility="private" description="for testing our framework"/>
    </configurations>
    <publications>
        <artifact name="filter-api" type="jar"  conf="api" ext="jar"/>
        <artifact name="filter-hmimpl" type="jar"  conf="homemade-impl" ext="jar"/>
        <artifact name="filter-ccimpl" type="jar"  conf="cc-impl" ext="jar"/>       
    </publications>
    <dependencies>
        <dependency org="commons-collections" name="commons-collections" rev="3.1" conf="cc-impl->default"/>
        <dependency org="junit" name="junit" rev="3.8" conf="test->default"/>
    </dependencies>
</ivy-module>

1 2 3 4 5 6  下一页

Tags:ivy 教程 使用

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接