java : [基于Apache CXF构建SOA应用] 书中提到的 common_build.xml

[基于Apache CXF构建SOA应用] 书中第43页 Ant 的 bulil.xml 中有

<import file="../common_build.xml"/>

提到的 common_build.xml 应在 samples/

但是书中没有 common_build.xml , 奇怪的是光盘中代码文件也找不到。

下面给出 common_build.xml 

<?xml version="1.0"?>
<!--
     Generated by WSDLToJava Compiler.
     
     This class was generated by Apache CXF 2.6.10
     Fri Sep 24 19:23:10 CST 2013
     Generated source version: 2.6.10
-->

<project name="cxf wsdltojava" default="build" basedir=".">

    <property environment="env"/>
    <property name="home.dir" location="${basedir}"/>
    <property name="build.dir" location ="${basedir}/build"/>
    <property name="build.classes.dir" location ="${build.dir}/classes"/>
    <property name="build.src.dir" location ="${basedir}"/>

    <!-- find the tools jar -->
    <available property="tools.jar" value="$${env.JAVA_HOME}/lib/tools.jar"
               file="${env.JAVA_HOME}/lib/tools.jar"/>
    <path id="jdk.tools.classpath">
        <pathelement location="${tools.jar}"/>
    </path>

    <condition property="is.java.version.15">
        <or>
          <equals arg1="${ant.java.version}" arg2="1.5"/>
          <equals arg1="${ant.java.version}" arg2="1.6"/>
        </or>
    </condition>

    <fail message="cxf requires Java version 1.5 or higher. You are currently using Java version ${ant.java.version}."
          unless="is.java.version.15"/>

    <!-- Determine cxf.home, either from the environment variable CXF_HOME
         - or using ../..
    -->
    <condition property="cxf.home" value="${env.CXF_HOME}">
        <isset property="env.CXF_HOME"/>
    </condition>

    <fail message="Please set CXF_HOME environment variable." unless="cxf.home"/>

    <!-- Determine cxf.jar.file, either ${cxf.home}/build/lib/cxf.jar
         - in a source distribution, or ${cxf.home}/lib/cxf-manifest.jar in a binary
         - distribution.
    -->
    <condition property="cxf-manifest.jar.file" value="${cxf.home}/build/lib/cxf-manifest.jar">
        <available file="cxf-manifest.jar" type="file" filepath="${cxf.home}/build/lib"/>
    </condition>
    <property name="cxf-manifest.jar.file" value="${cxf.home}/lib/cxf-manifest.jar"/>

    <fail message="The location ${cxf.home} does not seem to contain a cxf installation; if you are importing this common build file from a location other than the cxf samples directory then you need to set the cxf_HOME environment variable.">
        <condition>
            <not>
                <isset property="cxf-manifest.jar.file" />
            </not>
        </condition>
    </fail>

    <!-- Determine the tools directory, either ${cxf.home}/tools
         - in a source distribution, or ${cxf.home}/lib in a binary
         - distribution.
    -->
    <condition property="thirdparty.tools.dir" value="${cxf.home}/tools">
        <available file="tools" type="dir" filepath="${cxf.home}"/>
    </condition>

    <condition property="thirdparty.tools.dir" value="${cxf.home}/lib">
        <available file="lib" type="dir" filepath="${cxf.home}"/>
    </condition>

    <property name="cxf.etc.dir" location="${cxf.home}/etc"/>

    <path id="cxf.classpath">
        <pathelement location="${home.dir}" /> 
        <pathelement location="${build.classes.dir}"/>
        <pathelement location="${cxf-manifest.jar.file}"/>
    </path>

    <target name="compile">
        <mkdir dir="${build.classes.dir}"/>
        <javac srcdir="${build.src.dir}" destdir="${build.classes.dir}" debug="true" includeantruntime="false">
            <classpath refid="cxf.classpath" />
        </javac>
    </target>

    <target name="checkstyle">
        <checkstyle config="${checkstyle.config.file}">
            <fileset dir="${basedir}/src" includes="**/*.java"/>
            <classpath>
                <path refid="cxf.classpath"/>
            </classpath>
        </checkstyle>
    </target>

    <target name="clean">
        <delete dir="${build.classes.dir}"/>
        <delete file="${java.timestamp.file}"/>
        <delete file="demo.log"/>
    </target>

    <target name="build"  depends="compile" description="build demo client and server"/>

    <macrodef name="cxfrun">
        <attribute name="classname"/>
        <attribute name="param1" default=""/>
        <attribute name="param2" default=""/>
        <attribute name="param3" default=""/>
        <attribute name="param4" default=""/>
        <attribute name="param5" default=""/>
        <attribute name="jvmarg1" default="-D"/>
        <attribute name="jvmarg2" default="-D"/>
        <attribute name="jvmarg3" default="-D"/>
        <attribute name="jvmarg4" default="-D"/>
        <attribute name="jvmarg5" default="-D"/>
        <sequential>
            <java classname="@{classname}" fork="yes">
                <classpath>
                    <path refid="cxf.classpath"/>
                </classpath>
                <arg value="@{param1}"/>
                <arg value="@{param2}"/>
                <arg value="@{param3}"/>
                <arg value="@{param4}"/>
                <arg value="@{param5}"/>
                <jvmarg value="@{jvmarg1}"/>
                <jvmarg value="@{jvmarg2}"/>
                <jvmarg value="@{jvmarg3}"/>
                <jvmarg value="@{jvmarg4}"/>
                <jvmarg value="@{jvmarg5}"/>
                <assertions>
                    <enable package="org.apache.cxf"/>
                </assertions>
                <sysproperty key="java.util.logging.config.file" value="${cxf.etc.dir}/logging.properties"/>
                <sysproperty key="log4j.configuration" value="file:///${cxf.etc.dir}/log4j.properties"/>
            </java>
        </sequential>
    </macrodef>
</project>

后来才知道生成 ant build.xml 用命令行:

wsdl2java -p com.test -d src -ant -noAddressBinding -encoding utf-8 -client http://www.webxml.com.cn/WebServices/MobileCodeWS.asmx?wsdl

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值