• Ant构建文件解析


    <?xml version="1.0" encoding="UTF-8"?>
    <!-- 在Ant脚本中,project是这个XML文档的根结点 ,project有以下几个属性:-->
    <!-- name:指明构建任务的名称,一般情况下选择要构建的项目名称即可 -->
    <!-- default:一个项目可以定义多个target。target就是Ant要执行的动作,在执行Ant时可以选择执行哪个target。
        当没有选择执行哪个target时,使用project的default属性指定的target。在调用 Ant脚本时,可以指定要运行的target,
        在没有指定target时,就要使用default指定的target,在这里default属性是必须指定的。-->
    <!-- basedir:Ant脚本工作的根路径,在一般情况下,我们会把Ant脚本放在构建项目的根目录下,这种情况下的basedir属性的值就可以是".",即把当前目录作为Ant脚本工作的根目录。 -->
    <project name="HelloWorld" default="run" basedir=".">
         <!-- property用于描述Ant脚本中的属性和Ant脚本这外的properties属性文件。
             property相当于定义了一个变量, 这个变量在整个Ant脚本中可以使用。 如:-->
         <target name="prop">
             <!-- Ant脚本定义的工作根目录 -->
             <echo message="${basedir}" />
             <!-- Ant版本 -->
             <echo message="${ant.version}" />
             <!-- Ant脚本文件 -->
             <echo message="${ant.file}" />
             <!-- Ant脚本定义的工作名称 -->
             <echo message="${ant.project.name}" />
             <!-- Ant使用的JDK版本 -->
             <echo message="${ant.java.version}" />
              <!-- 操作系统 -->
             <echo message="${os.name}" />
             <!-- 把所有的环境变量取出放在env中 ,在后面的程序中可以使用${env.变量名称}来取出-->
             <property environment="env" />
             <echo message="${env.JAVA_HOME}" />
             <echo message="${env.TOMCAT_HOME}" />
         </target>
        <property name="src" value="src"/>
        <property name="dest" value="build/classes" />
        <property name="lib" value="build/lib" />
        <property name="hello_jar" value="build/lib/hello.jar" />
        <!-- 在Ant脚本中把想要做的事情用target描述,每个target描述一件事情,target有以下几个属性: -->
        <!-- name:target名称,name属性是必须指定的 -->
        <!-- depends:指明各个target之间的依赖关系,一个target可能依赖于其它的target。如果一个target依赖于多个其他的target,只需要在depends中用逗号隔开即可。
            depends属性是可选的,不是必须指定的。 -->
        <!-- if:指定target所需设定的属性名。 -->
        <!-- unless:指定target所需清除的属性名 -->
        <!-- description:简单描述target功能。这些描述可由-projecthelp命令在DOS命令行中输出 -->
        <target name="init">
            <mkdir dir="${dest}" />
            <mkdir dir="${lib}" />
        </target>
        <target name="complie" depends="init">
            <javac srcdir="${src}" destdir="${dest}" />
        </target>
        <target name="build" depends="complie">
            <jar destfile="${hello_jar}" basedir="${dest}" >
                <manifest>
                    <attribute name="Main-Class" value="HelloWorld" />
                </manifest>
            </jar>
        </target>
        <target name="run" depends="build">
            <java classname="com.helloworld.HelloWorld" classpath="${hello_jar}" />
            <echo message="${hello_jar}" />
        </target>
        <target name="clean">
            <delete file="${hello_jar}" />
            <delete dir="${dest}" />
            <delete dir="${lib}" />
        </target>
    </project>
  • 相关阅读:
    微信小程序反编译
    Mac 绑定Gitlab或者GitHub帐号,从新生成公钥
    Vue调试工具vue-devtools安装及使用
    NPM和Yarn添加淘宝镜像
    权限菜单设计
    Axure RP 7.0注册码
    Mac用户抓包软件Charles 4.0 破解 以及 抓取Https链接设置
    [转]c++导出函数dll供c#调用
    ef(EntityFramework)动态传递数据库连接字符串
    [转]sqlserver查询系统表统计表行数和占用空间
  • 原文地址:https://www.cnblogs.com/mingforyou/p/3255409.html
Copyright © 2020-2023  润新知