File: artifact.xml

package info (click to toggle)
spring-build 2.7.0-2
  • links: PTS, VCS
  • area: main
  • in suites: jessie, jessie-kfreebsd, wheezy
  • size: 1,008 kB
  • ctags: 400
  • sloc: xml: 2,709; java: 1,858; makefile: 39; sh: 24
file content (90 lines) | stat: -rw-r--r-- 4,021 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
<?xml version="1.0" encoding="UTF-8"?>
<!--
   Copyright 2010 SpringSource
   
   Licensed under the Apache License, Version 2.0 (the "License");
   you may not use this file except in compliance with the License.
   You may obtain a copy of the License at
   
       http://www.apache.org/licenses/LICENSE-2.0
   
   Unless required by applicable law or agreed to in writing, software
   distributed under the License is distributed on an "AS IS" BASIS,
   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   See the License for the specific language governing permissions and
   limitations under the License.
-->
<project name="artifact-war" xmlns:ivy="antlib:org.apache.ivy.ant" xmlns:bundlor="antlib:com.springsource.bundlor.ant">

	<import file="common.xml"/>
	<import file="../common/artifact.xml"/>

<!-- Main targets -->
	<target name="jar" depends="ivy.init, resolve.compile, compile.init, jar.init"
			description="Creates a WAR file containing the output of a compilation of the source tree.">
		<delete quiet="true" file="${ivy.output.file}"/>
		<mkdir dir="${ivy.output.dir}"/>
		<delete quiet="true" file="${war.output.file}"/>
		<mkdir dir="${war.output.dir}"/>
		<delete quiet="true" file="${source-jar.output.file}"/>
		<mkdir dir="${source-jar.output.dir}"/>

		<copy todir="${war.staging.dir}">
			<fileset dir="${main.webapp.dir}" erroronmissingdir="false"/>
		</copy>

		<compile classpath.id="compile.classpath" input.dir="${main.java.dir}" output.dir="${war.classes.dir}"
				resources.dir="${main.resources.dir}"/>
		<ivy:retrieve resolveId="compile.classpath" conf="compile,runtime" type="jar"
				pattern="${war.lib.dir}/[artifact]-[revision].[ext]" log="download-only"/>
		<antcall target="bundlor"/>
		<jar destfile="${war.output.file}" basedir="${war.staging.dir}" index="true" filesetmanifest="merge">
			<manifest>
				<attribute name="Bundle-Creator" value="${user.name}"/>
				<attribute name="Implementation-Title" value="${implementation.title}"/>
				<attribute name="Implementation-Version" value="${implementation.version}"/>
			</manifest>
		</jar>
		<jar destfile="${source-jar.output.file}" basedir="${main.java.dir}" index="true"/>
		<ivy:publish resolver="integration" pubdate="${timestamp}" status="${release.type}">
			<artifacts pattern="${ivy.output.dir}/[artifact].[ext]"/>
			<artifacts pattern="${war.output.dir}/[artifact].[ext]"/>
			<artifacts pattern="${source-jar.output.dir}/[artifact].[ext]"/>
			<artifacts pattern="${license.dir}/[artifact].[ext]"/>
		</ivy:publish>
	</target>

<!-- Other targets -->
	<target name="compile.init" depends="ivy.init">
		<ivy:cachepath resolveId="spring.ant.classpath" pathid="spring.ant.classpath"
				organisation="org.springframework.build" module="org.springframework.build.ant"
				revision="${org.springframework.build.ant.version}" conf="runtime" type="jar" inline="true"
				log="download-only"/>
<!--
		<ivy:cachepath resolveId="ecj.classpath" pathid="ecj.classpath" organisation="org.eclipse.jdt"
				module="com.springsource.org.eclipse.jdt.core.compiler.batch" revision="${org.eclipse.jdt.core.compiler.batch.version}"
				conf="runtime" type="jar" inline="true" log="download-only"/>
-->
                <path id="ecj.classpath">
                        <pathelement path="${ecj.classpath}"/>
                </path>
		<taskdef resource="org/springframework/build/ant/antlib.xml" uri="antlib:org.springframework.build">
			<classpath>
				<path refid="spring.ant.classpath"/>
				<path refid="ecj.classpath"/>
			</classpath>
		</taskdef>
	</target>

	<target name="bundlor" depends="bundlor.init" unless="disable.bundlor">
		<bundlor:bundlor inputPath="${war.staging.dir}" outputPath="${war.staging.dir}"
				bundleVersion="${bundle.version}" manifestTemplatePath="${manifest.template.file}"
				failOnWarnings="${fail.on.warnings}">
			<propertyset refid="bundlor.properties"/>
			<propertyset>
				<propertyref builtin="all"/>
			</propertyset>
		</bundlor:bundlor>
	</target>

</project>