Ivy: Difference between revisions
Jump to navigation
Jump to search
(Created page with "==Ant Build== <code>build.xml</code> <source lang="xml"> <?xml version="1.0" encoding="UTF-8" standalone="no"?> <project name="chorke" default="cki.init" basedir="." xmlns:ivy...") |
|||
(21 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
├─ build.xml | |||
├─ ivysettings.xml | |||
├─ ivy.xml | |||
└─ ant | |||
├─ build.js | |||
└─ build.properties | |||
==Ant Build== | ==Ant Build== | ||
<code>build.xml</code> | <code>build.xml</code> | ||
<source lang="xml"> | <source lang="xml"> | ||
<?xml version="1.0" encoding="UTF-8" standalone="no"?> | <?xml version="1.0" encoding="UTF-8" standalone="no"?> | ||
<project name="chorke" default="cki. | <project name="chorke" default="cki.ini" basedir="." | ||
<description>chorke ant | xmlns:ivy="antlib:org.apache.ivy.ant" | ||
xmlns:ac="antlib:net.sf.antcontrib"> | |||
<description>chorke ant ivy impl</description> | |||
<property name="ant.dir" location="${basedir}/ant"/> | |||
<property name="ant.lib" location="${user.home}/.ant/lib"/> | <property name="ant.lib" location="${user.home}/.ant/lib"/> | ||
<property name="chorke.home" location="${user.home}/.chorke"/> | <property name="chorke.home" location="${user.home}/.chorke"/> | ||
Line 10: | Line 21: | ||
<property name="sonatype.local" value="https://repository.sonatype.org/service/local"/> | <property name="sonatype.local" value="https://repository.sonatype.org/service/local"/> | ||
<property name="central.proxy" value="${sonatype.local}/artifact/maven/redirect?r=central-proxy"/> | <property name="central.proxy" value="${sonatype.local}/artifact/maven/redirect?r=central-proxy"/> | ||
<available file="${ant.lib}/ivy.jar" property="ivy.jar.exist"/> | |||
<condition property="ivy.jar.not.exist"> | <condition property="ivy.jar.not.exist"> | ||
<not> <available file="${ant.lib}/ivy.jar"/></not> | <not> | ||
<available file="${ant.lib}/ivy.jar"/> | |||
</not> | |||
</condition> | </condition> | ||
<target name="cki.log"> | |||
<script language="javascript" src="${ant.dir}/build.js"> | <script language="javascript" src="${ant.dir}/build.js"> | ||
Chorke.ant.init(true); | Chorke.ant.init(true); | ||
Line 20: | Line 35: | ||
</target> | </target> | ||
<target name="cki. | <target name="cki.get" depends="cki.log" if="ivy.jar.not.exist"> | ||
<mkdir dir="${ant.lib}"/> | <mkdir dir="${ant.lib}"/> | ||
<get src="${central.proxy}&g=org.apache.ivy&a=ivy&v=2.3.0&e=jar" dest="${ant.lib}/ivy.jar"/> | <get src="${central.proxy}&g=org.apache.ivy&a=ivy&v=2.3.0&e=jar" dest="${ant.lib}/ivy.jar"/> | ||
</target> | </target> | ||
<target name="cki.ivy" depends="cki.get" if="ivy.jar.exist"> | |||
<ivy:resolve/> | <ivy:resolve/> | ||
<ivy:report todir= | <ivy:report todir="${basedir}/target/ivy-reports" graph="false" xml="false"/> | ||
<ivy:cachepath pathid="compile.path" conf="compile"/> | <ivy:cachepath pathid="compile.path" conf="compile"/> | ||
<ivy:cachepath pathid="runtime.path" conf="runtime"/> | <ivy:cachepath pathid="runtime.path" conf="runtime"/> | ||
Line 34: | Line 49: | ||
</target> | </target> | ||
<target name="cki.def" depends="cki.ivy" if="ivy.jar.exist"> | |||
<taskdef uri="antlib:net.sf.antcontrib" classpathref="build.path"/> | <taskdef uri="antlib:net.sf.antcontrib" classpathref="build.path"/> | ||
</target> | </target> | ||
<target name="cki.dep" if="ivy.jar.exist"> | |||
<echo message="Hello, world"/> | <echo message="Hello, world"/> | ||
<echo message="The first five letters of the alphabet are:"/> | <echo message="The first five letters of the alphabet are:"/> | ||
Line 48: | Line 63: | ||
</target> | </target> | ||
<target name="cki.ini" depends="cki.def"> | |||
<sequential> | <sequential> | ||
<antcall target="cki.dep"/> | <antcall target="cki.dep"/> | ||
Line 55: | Line 70: | ||
</project> | </project> | ||
</source> | </source> | ||
==Settings== | |||
<code>ivysettings.xml</code> | |||
<source lang="xml"> | |||
<ivysettings> | |||
<settings defaultResolver="chorke.chain"/> | |||
<caches defaultCacheDir="${basedir}/.ivy2/cache"/> | |||
<credentials host="mvn.chorke.org" realm="Authorization" username="maven" passwd="chorke"/> | |||
<resolvers> | |||
<ibiblio name="central" m2compatible="true"/> | |||
<ibiblio name="chorke.public" root="http://mvn.chorke.org/m2/public" m2compatible="true"/> | |||
<ibiblio name="chorke.releases" root="http://mvn.chorke.org/m2/releases" m2compatible="true"/> | |||
<chain name="chorke.chain"> | |||
<resolver ref="central"/> | |||
<resolver ref="chorke.public"/> | |||
<resolver ref="chorke.releases"/> | |||
</chain> | |||
</resolvers> | |||
<modules> | |||
<module organisation="com.oracle.jdbc" resolver="chorke.public"/> | |||
</modules> | |||
</ivysettings> | |||
</source> | |||
==Ivy== | |||
<code>ivy.xml</code> | |||
<source lang="xml"> | |||
<ivy-module version="2.0"> | |||
<info organisation="org.chorke.make" module="chorke-make-migrat" status="integration"/> | |||
<configurations> | |||
<conf name="compile" description="compile time dependencies"/> | |||
<conf name="runtime" description="run-time dependencies" extends="compile"/> | |||
<conf name="test" description="unit testing dependencies" extends="runtime"/> | |||
<conf name="build" description="ant dependencies"/> | |||
</configurations> | |||
<dependencies> | |||
<dependency org="org.liquibase" name="liquibase-core" rev="3.5.3" conf="build->default"/> | |||
<dependency org="ant-contrib" name="ant-contrib" rev="1.0b3" conf="build->default"> | |||
<exclude org="ant" module="ant"/> | |||
</dependency> | |||
<!-- vendor specific jdbc driver to perform liquibase migration --> | |||
<dependency org="com.microsoft.sqlserver" name="mssql-jdbc" rev="6.2.2.jre7" conf="build->default"/> | |||
<dependency org="org.apache.derby" name="derbyclient" rev="10.10.2.0" conf="build->default"/> | |||
<dependency org="postgresql" name="postgresql" rev="9.0-801.jdbc4" conf="build->default"/> | |||
<dependency org="mysql" name="mysql-connector-java" rev="5.1.21" conf="build->default"/> | |||
<dependency org="org.apache.derby" name="derby" rev="10.10.2.0" conf="build->default"/> | |||
<dependency org="com.oracle.jdbc" name="ojdbc6" rev="11.2.0.4" conf="build->default"> | |||
<exclude org="com.oracle.jdbc" module="xmlparserv2"/> | |||
<exclude org="com.oracle.jdbc" module="oraclepki"/> | |||
<exclude org="com.oracle.jdbc" module="osdt_cert"/> | |||
<exclude org="com.oracle.jdbc" module="osdt_core"/> | |||
<exclude org="com.oracle.jdbc" module="orai18n"/> | |||
<exclude org="com.oracle.jdbc" module="xdb6"/> | |||
</dependency> | |||
<dependency org="com.h2database" name="h2" rev="1.4.190" conf="build->default"/> | |||
<dependency org="org.hsqldb" name="hsqldb" rev="2.3.3" conf="build->default"/> | |||
</dependencies> | |||
</ivy-module> | |||
</source> | |||
==References== | |||
{| | |||
| valign="top" | | |||
* [https://stackoverflow.com/questions/23515394 Run an Ant build.xml file inside a Jar] | |||
* [https://stackoverflow.com/questions/6938241 Add repositories and specificy repository] | |||
| valign="top" | | |||
| valign="top" | | |||
|- | |||
| colspan="3" | | |||
---- | |||
|- | |||
| valign="top" | | |||
* [[CocoaPods]] | |||
* [[Maven]] | |||
* [[Conan]] | |||
* [[Bazel]] | |||
* [[NPM]] | |||
* [[Ant]] | |||
| valign="top" | | |||
| valign="top" | | |||
|} |
Latest revision as of 20:57, 18 January 2024
├─ build.xml ├─ ivysettings.xml ├─ ivy.xml └─ ant ├─ build.js └─ build.properties
Ant Build
build.xml
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<project name="chorke" default="cki.ini" basedir="."
xmlns:ivy="antlib:org.apache.ivy.ant"
xmlns:ac="antlib:net.sf.antcontrib">
<description>chorke ant ivy impl</description>
<property name="ant.dir" location="${basedir}/ant"/>
<property name="ant.lib" location="${user.home}/.ant/lib"/>
<property name="chorke.home" location="${user.home}/.chorke"/>
<property name="academia.home" location="${chorke.home}/academia"/>
<property name="sonatype.local" value="https://repository.sonatype.org/service/local"/>
<property name="central.proxy" value="${sonatype.local}/artifact/maven/redirect?r=central-proxy"/>
<available file="${ant.lib}/ivy.jar" property="ivy.jar.exist"/>
<condition property="ivy.jar.not.exist">
<not>
<available file="${ant.lib}/ivy.jar"/>
</not>
</condition>
<target name="cki.log">
<script language="javascript" src="${ant.dir}/build.js">
Chorke.ant.init(true);
</script>
</target>
<target name="cki.get" depends="cki.log" if="ivy.jar.not.exist">
<mkdir dir="${ant.lib}"/>
<get src="${central.proxy}&g=org.apache.ivy&a=ivy&v=2.3.0&e=jar" dest="${ant.lib}/ivy.jar"/>
</target>
<target name="cki.ivy" depends="cki.get" if="ivy.jar.exist">
<ivy:resolve/>
<ivy:report todir="${basedir}/target/ivy-reports" graph="false" xml="false"/>
<ivy:cachepath pathid="compile.path" conf="compile"/>
<ivy:cachepath pathid="runtime.path" conf="runtime"/>
<ivy:cachepath pathid="build.path" conf="build"/>
<ivy:cachepath pathid="test.path" conf="test"/>
</target>
<target name="cki.def" depends="cki.ivy" if="ivy.jar.exist">
<taskdef uri="antlib:net.sf.antcontrib" classpathref="build.path"/>
</target>
<target name="cki.dep" if="ivy.jar.exist">
<echo message="Hello, world"/>
<echo message="The first five letters of the alphabet are:"/>
<ac:for list="a,b,c,d,e" param="letter">
<sequential>
<echo>Letter @{letter}</echo>
</sequential>
</ac:for>
</target>
<target name="cki.ini" depends="cki.def">
<sequential>
<antcall target="cki.dep"/>
</sequential>
</target>
</project>
Settings
ivysettings.xml
<ivysettings>
<settings defaultResolver="chorke.chain"/>
<caches defaultCacheDir="${basedir}/.ivy2/cache"/>
<credentials host="mvn.chorke.org" realm="Authorization" username="maven" passwd="chorke"/>
<resolvers>
<ibiblio name="central" m2compatible="true"/>
<ibiblio name="chorke.public" root="http://mvn.chorke.org/m2/public" m2compatible="true"/>
<ibiblio name="chorke.releases" root="http://mvn.chorke.org/m2/releases" m2compatible="true"/>
<chain name="chorke.chain">
<resolver ref="central"/>
<resolver ref="chorke.public"/>
<resolver ref="chorke.releases"/>
</chain>
</resolvers>
<modules>
<module organisation="com.oracle.jdbc" resolver="chorke.public"/>
</modules>
</ivysettings>
Ivy
ivy.xml
<ivy-module version="2.0">
<info organisation="org.chorke.make" module="chorke-make-migrat" status="integration"/>
<configurations>
<conf name="compile" description="compile time dependencies"/>
<conf name="runtime" description="run-time dependencies" extends="compile"/>
<conf name="test" description="unit testing dependencies" extends="runtime"/>
<conf name="build" description="ant dependencies"/>
</configurations>
<dependencies>
<dependency org="org.liquibase" name="liquibase-core" rev="3.5.3" conf="build->default"/>
<dependency org="ant-contrib" name="ant-contrib" rev="1.0b3" conf="build->default">
<exclude org="ant" module="ant"/>
</dependency>
<!-- vendor specific jdbc driver to perform liquibase migration -->
<dependency org="com.microsoft.sqlserver" name="mssql-jdbc" rev="6.2.2.jre7" conf="build->default"/>
<dependency org="org.apache.derby" name="derbyclient" rev="10.10.2.0" conf="build->default"/>
<dependency org="postgresql" name="postgresql" rev="9.0-801.jdbc4" conf="build->default"/>
<dependency org="mysql" name="mysql-connector-java" rev="5.1.21" conf="build->default"/>
<dependency org="org.apache.derby" name="derby" rev="10.10.2.0" conf="build->default"/>
<dependency org="com.oracle.jdbc" name="ojdbc6" rev="11.2.0.4" conf="build->default">
<exclude org="com.oracle.jdbc" module="xmlparserv2"/>
<exclude org="com.oracle.jdbc" module="oraclepki"/>
<exclude org="com.oracle.jdbc" module="osdt_cert"/>
<exclude org="com.oracle.jdbc" module="osdt_core"/>
<exclude org="com.oracle.jdbc" module="orai18n"/>
<exclude org="com.oracle.jdbc" module="xdb6"/>
</dependency>
<dependency org="com.h2database" name="h2" rev="1.4.190" conf="build->default"/>
<dependency org="org.hsqldb" name="hsqldb" rev="2.3.3" conf="build->default"/>
</dependencies>
</ivy-module>
References
| ||