1 <project default=
"launch">
2 <dirname property=
"equinoxDir" file=
"${ant.file}" />
3 <property name=
"equinoxJar" location=
"${equinoxDir}/org.eclipse.osgi.jar" />
4 <property name=
"equinoxArgs" value=
"-console -clean -noExit" />
5 <property name=
"osgiBootBundle" value=
"org.argeo.slc.osgiboot.jar" />
6 <property name=
"configurationDir" location=
"${equinoxDir}/configuration" />
7 <property name=
"configurationFile" location=
"${configurationDir}/config.ini" />
9 <target name=
"launch" depends=
"writeConfiguration,start">
13 <target name=
"writeConfiguration" description=
"Generate configuration based on properties">
14 <echo message=
"equinoxJar=${equinoxJar}" />
15 <echo message=
"configurationDir=${configurationDir}" />
16 <mkdir dir=
"${configurationDir}"/>
17 <echo message=
"osgiBootBundle=${osgiBootBundle}" />
18 <echo file=
"${configurationFile}">
20 osgi.bundles=reference:file:${osgiBootBundle}@start
24 <addProperty name=
"slc.osgi.locations" />
25 <addProperty name=
"slc.osgi.start" />
26 <addProperty name=
"slc.osgi.devBases" />
27 <addProperty name=
"slc.osgi.devPatterns" />
28 <addProperty name=
"slc.maven.dependencyFile" />
31 <target name=
"start.java" description=
"Start Equinox runtime based on generated config">
32 <java classname=
"org.eclipse.core.runtime.adaptor.EclipseStarter" fork=
"true" dir=
"${equinoxDir}" classpath=
"${equinoxJar}">
33 <arg value=
"-console" />
34 <arg value=
"-noExit" />
35 <arg value=
"-clean" />
36 <arg value=
"-debug" />
37 <arg value=
"-configuration" />
38 <arg value=
"${configurationDir}" />
43 <property name=
"commandArgs" value=
"-cp ${equinoxJar} org.eclipse.core.runtime.adaptor.EclipseStarter ${equinoxArgs} -configuration ${configurationDir}" />
45 <condition property=
"starter" value=
"gnome-terminal">
53 <condition property=
"starterArgs" value=
"--maximize -x">
61 <condition property=
"starter" value=
"start">
62 <os family=
"windows" />
64 <property name=
"starterArgs" value=
"" />
65 <property name=
"javaCommand" value=
"java" />
67 <echo message=
"commandArgs=${commandArgs}"/>
68 <exec executable=
"${starter}" dir=
"${equinoxDir}">
69 <arg line=
"${starterArgs}" />
70 <arg value=
"${javaCommand}" />
71 <arg line=
"${commandArgs}" />
75 <macrodef name=
"addProperty">
76 <attribute name=
"name" />
78 <property name=
"@{name}" value=
"" />
79 <echo message=
"@{name}=${@{name}}" />
80 <echo file=
"${configurationFile}" append=
"true">
81 <![CDATA[@{name}=${@{name}}]]
></echo>