spring 源码
https://spring.io/
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
85 lines
3.8 KiB
85 lines
3.8 KiB
<?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"/>
|
|
<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> |