使用 ant 让你愉快编程(2)

信创改造实战:SpringBoot项目迁移到宝兰德BES 9.5.5的完整避坑指南(附依赖与web.xml配置) 本文详细介绍了将SpringBoot项目迁移到宝兰德BES 9.5.5的完整流程,包括依赖改造、web.xml配置降级等关键步骤。通过实战案例和避坑指南,帮助开发者高效完成国产中间件适配,确保项目平稳运行。特别针对Tomcat依赖排除和BES适配器选择提供了专业建议。 阅读详情
摘要: build_common.xml, common.xml 及 usage.txt

2. 介绍 build_common.xml, common.xml 及 usage.txt

. 以下为 build_common.xml 文件内容.

<?xml version="1.0" encoding="ISO-8859-1"?>
<!--
    Copyright 2004 camry.wu@gmail.com

    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation; either version 2 of the License, or
    (at your option) any later version.

    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.

    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-->
<project name="Common build file" default="all" basedir="">

  <description>
    这是一个通用的 ant build 文件. Version 1.0.
    感谢: 这篇文档借用了很多 Johan 的想法, 他的主页在 http://dev.kanngard.net
    Copyright 2004 camry.wu@gmail.com
  </description>

  <!-- 读入 common.xml 配置 -->
  <xmlproperty  file="${path.common}/common.xml"
                semanticAttributes="true"
                keepRoot="false"/>

  <!-- 设置编译时的 classpath -->
  <path id="compile.classpath">
    <fileset dir="${path.common}/lib">
      <include name="*.jar"/>
    </fileset>
    <fileset dir="${lib}">
      <include name="*.jar"/>
    </fileset>
    <pathelement location="${dist.classes}"/>
  </path>

  <!-- 设置运行时的 classpath -->
  <path id="run-time.classpath">
    <path refid="compile.classpath"/>
  </path>

  <!-- 初始化过程, 会调用具体项目的初始化过程先 -->
  <target name="init"
          depends="project_init"
          description="Initialize environment">
  </target>

  <!-- 显示使用说明 -->
  <target name="usage">
    <loadfile property="usage.message"
              srcFile="${path.common}/usage.txt"/>
    <echo message="${usage.message}"/>
  </target>

  <!-- 预备, 通常在项目刚建立的时候运行此任务 -->
  <target name="common_prepare"
          depends="init" description="Prepare build directory">
    <copy todir="." preservelastmodified="true">
      <fileset dir="${path.common}/template/">
        <include name="**/*"/>
      </fileset>
    </copy>
  </target>

  <!-- 配置 checkstyle , 只检查 src/main 目录下的源代码 -->
  <target name="checkstyle" depends="init">
    <taskdef  resource="checkstyletask.properties"
              classpath="${path.common}/lib/checkstyle-all-3.4.jar"/>
    <checkstyle config="${build}/checkstyle_checks.xml">
      <fileset dir="${src.main}" includes="**/*.java"/>
      <property key="checkstyle.cache.file"
                file="${path.common}/lib/checkstyle.cache"/>
      <classpath refid="compile.classpath"/>
    </checkstyle>
  </target>

  <!-- 编译 src 下源文件, class 文件放到 dist/classes 下 -->
  <target name="compile" depends="init" description="Compile source">
    <mkdir dir="${dist}/classes"/>
    <javac  debug="${compile.debug}"
            deprecation="${compile.deprecation}"
            destdir="${dist}/classes"
            target="${compile.jdk-version.target}"
            source="${compile.jdk-version.source}"
            optimize="${compile.optimize}"
            srcdir="${src}">
      <classpath refid="compile.classpath"/>
    </javac>
  </target>

  <!-- 清除 dist 目录 -->
  <target name="clean"
          depends="project_clean"
          description="Wipeout all generated files">
    <delete dir="${dist}/classes"/>
    <delete dir="${dist.lib}"/>
    <mkdir dir="${dist}/classes"/>
    <mkdir dir="${dist.lib}"/>
  </target>

  <!-- 打包 -->
  <target name="jar"
          depends="checkstyle, compile"
          description="Create binary distribution">
    <mkdir dir="${dist}/classes"/>
    <mkdir dir="${dist.lib}"/>
    <copy file="LICENSE" todir="${dist}/classes"/>
    <delete>
      <fileset dir="${dist.lib}" includes="*.jar"/>
    </delete>
    <jar  basedir="${dist}/classes"
          jarfile="${dist.lib}/${component.name}-${component.version}.jar">
      <include name="**/*.class"/>
      <exclude name="**/Test*.class"/>
    </jar>

    <delete>
      <fileset dir="${dist}/classes">
        <include name="LICENSE"/>
      </fileset>
    </delete>
  </target>

  <!-- 运行 dist/classes 目录下的所有以 Test 开头的测试类 -->
  <target name="test" depends="compile" description="run junit tests">
    <junit printsummary="on"
           fork="false"
           haltonfailure="false"
           failureproperty="tests.failed"
           showoutput="true">
      <classpath refid="run-time.classpath"/>
      <formatter type="brief" usefile="false"/>
      <batchtest>
        <fileset dir="${dist}/classes">
          <include name="**/Test*.*"/>
        </fileset>
      </batchtest>
    </junit>

    <fail if="tests.failed">
    *********************************************************
    *********************************************************
    ****  One or more tests failed! Check the output...  ****
    *********************************************************
    *********************************************************
    </fail>
  </target>

  <!-- 发布, 会调用具体项目的发布任务 -->
  <target name="deploy"
          depends="project_deploy" description="Deploy application"/>

  <!-- 创建文档 -->
  <target name="javadoc"
          depends="compile"
          description="Create component Javadoc documentation">
    <delete dir="${docs.api}"/>
    <mkdir dir="${docs.api}"/>
    <javadoc  author="true"
              bottom="${component.title}"
              destdir="${docs.api}"
              source="${compile.jdk-version.source}"
              doctitle="${component.title}"
              packagenames="*"
              access="protected"
              sourcepath="${src.main}"
              version="true"
              windowtitle="${component.title} (Version ${component.version})">
      <classpath refid="compile.classpath"/>
    </javadoc>
  </target>

  <!--  根据 cvs 配置, 从 cvs 服务器上下载源代码 -->
  <target name="fetch"
          depends="project_fetch" description="fetch current source from cvs">
  </target>

  <!-- 将源代码文件打包, 备份 -->
  <target name="src-zip"
          depends="checkstyle,compile"
          description="Creates source distribution">
    <copy file="LICENSE" todir="${src.main}"/>
    <delete>
      <fileset dir="${dist.lib}" includes="*-src.zip"/>
    </delete>
    <zip  basedir="."
          destfile="${dist.lib}/${component.name}-${component.version}-src.zip"
          whenempty="fail">
      <include name="**/*.*"/>
      <include name="*"/>
      <include name="**/*"/>
      <exclude name="${dist}/**/*.*"/>
      <exclude name="*.*~"/>      <!-- vi(JEdit) backups -->
      <exclude name=".nbattrs"/>  <!-- Netbeans filesystem attributes -->
      <exclude name="*.old"/>
    </zip>
  </target>

  <!--
    将源文件上传到服务器备份, 将目标文件上传到服务器发布.
    此任务中内容由各位自行设定, 一般是运行 ftp 任务.
  -->
  <target name="publish"
          depends="clean,jar,javadoc,src-zip" description="publish project">
  </target>

  <!-- 构建 -->
  <target name="all"
          depends="clean,fetch,test,jar,javadoc,deploy"
          description="build project"/>
</project>


. 以下为 common.xml 文件内容.

<?xml version="1.0" encoding="ISO-8859-1"?>
<!--
    Copyright 2004 camry.wu@gmail.com
    Common Ant build environment
-->

<root>
  <!--
    路径配置, 基本不用改动.
    但是假如你在一个陌生的环境中使用这套 build 工具,
    也许需要稍为修改一下这些路径的配置.
  -->
  <bin value="bin"/>
  <build value="build">
    <lib value="${build}/lib"/>
  </build>
  <dist value="dist">
    <lib value="${dist}/lib"/>
    <classes id="dist.classes" location="${dist}/classes"/>
  </dist>
  <docs value="docs">
    <api value="${docs}/api"/>
  </docs>
  <lib value="lib"/>
  <src value="src">
    <main value="${src}/main"/>
    <test value="${src}/test"/>
  </src>

  <!-- 编译选项 -->
  <compile>
    <debug value="true"/>
    <deprecation value="true"/>
    <jdk-version>
      <source value="1.4"/>
      <target value="1.4"/>
    </jdk-version>
    <optimize value="true"/>
  </compile>

</root>




. 以下为 usage.txt 文件内容.
${component.name} build file
---------------------------------------------

Available targets are:

prepare             --> 初始化项目环境
checkstyle          --> 检查源文件编码规范
compile             --> 编译
jar                 --> 打包
build               --> 构建
test                --> 测试
clean               --> 清除
deploy              --> 发布到 web 服务器运行
publish             --> 发布产品(源码及目标文件)
fetch               --> 从 cvs 上获取最新资源
docs                --> 创建 api 文档
all                 --> 执行 clean, fetch, build, test, doc, deploy
main                --> 默认的构建过程(自行修改)
第3章 zynq MII转GMII的配置和EMIO UART0的配置 本文介绍了在Vivado工程中实现MII转GMII接口适配的过程,同时配置EMIO UART0接口。主要内容包括:修改PS IP核添加UART0接口,使用concat IP核进行信号整合,调整GMII信号引脚连接,添加约束文件定义引脚映射,并最终生成bit流文件。通过详细的操作截图和TCL约束代码,展示了从硬件配置到生成可编程文件的完整流程,为Zynq平台开发提供了实用参考。 阅读详情

相关推荐

生成式引擎优化(GEO):启动GEO优化的5个有效策略

随着生成式AI的普及,传统SEO正被GEO(生成式引擎优化)取代。本文提出GEO五大核心策略:用户意图解析、结构化内容设计、语义关键词优化、对话式内容创作和权威信源建设。研究表明,优化后的内容在AI答案中的引用率提升300%,点击率增长27%。文章还介绍了BERT模型、Schema标记等关键技术工具,并指出未来GEO将向多模态优化、实时数据更新方向发展。企业需避免简单堆砌关键词,应建立长期内容策略,通过结构化、权威性内容在AI时代保持竞争优势。

解锁AI流量新红利!🚀 GEO优化(生成引擎优化)助您掌控AI搜索,让AI成为您的品牌最佳代言人! 2786

用 ant 让你愉快编程

目录结构:work/common/    | -- build_common.xml        #  这个文件包含基本的构建操作    | -- common.xml               #  这个文件为 build_common.xml 作配置,    |                               基本上不用改动.    | -- build_tomcat.xml 

蒋剑锋的专栏-java技术 1049

从配置文件加载顺序揭秘:为什么你的logback.xml读不到application.yml?

本文深入解析了Spring Boot中logback.xml无法读取application.yml配置的原因,揭示了Spring Boot配置加载机制与日志系统初始化的时序问题。通过对比logback.xml与logback-spring.xml的差异,提供了使用springProperty标签和系统属性传递等解决方案,帮助开发者有效解决日志配置问题。

weixin_29214335的博客 364

使用 ant 让你愉快编程

使用 ant 让你愉快编程(1)摘要: 目录结构划分已经有无数的文章介绍过 ant 了, 我就不再介绍 ant 的安装,配置了.每个使用 ant 的朋友都有一套自己的组织方式, 现在我把我的方式写出来供大家参考, 也免得自己忘记.1. 目录结构划分  假设你有一个工作目录为: /home/camry/work, 以下简称 work  为了适应多个项目的进行, 我配置了一套基本的配置文件放在 wor

godding的专栏 1237

C#.NET斗地主服务端核心架构与高性能实现

斗地主作为典型的实时对战棋牌逻辑,本质是状态驱动的分布式协同问题。其技术内核涵盖有限状态机建模、低延迟网络同步、无GC内存操作与轻量级AI决策等关键能力。在.NET平台下,借助Span<T>、ImmutableArray、命令/事件总线与内存池等特性,可构建出高吞吐(200+ QPS)、低延迟(<150ms)、强一致的可落地服务端。本文聚焦C#.NET生态中斗地主核心模块的设计取舍与压测验证,深入解析状态机驱动、CardSet结构体优化、Kestrel中间件锁、规则+概率混合AI等实战方案,为实时对战类业务

weixin_29726381的博客 345

节省人力成本40%!仓储物流AI机器人调度系统实战案例(含路径规划算法与系统架构图)

首先,我们需要定义一个Node类self.x = x # 节点x坐标self.y = y # 节点y坐标self.g = g # 从起点到当前节点的实际成本(g值)self.h = h # 从当前节点到终点的启发式成本(h值)self.f = g + h # 总成本(f值)self.parent = None # 父节点(用于回溯路径)self.task_id = task_id # 任务IDself.priority = priority # 任务优先级(1=最高,5=最低)

小程序开发 949

使用 ant 让你愉快编程(7)

摘要: 如何使用这个 ant 环境现在已经有了整个 ant 环境, 放在 work/common/ 目录下, 配置文件也都齐全了, 可以开始进行工程了.进行工程的步骤:1. 给工程起个响亮的名字, 就叫 Proj 吧:)2. cd 到 work/ 下3. mkdir Proj4. 将 work/common/build.xml 和 build.properties 文件拷贝到 Proj 下5. 修

Explorerwen--Javahome 933

【Bluetooth蓝牙开发】一、开篇词 | 打造全网最详细的Bluetooth开发教程

1、开篇词 2、蓝牙开发入门 3、蓝牙协议栈总览 4、蓝牙协议栈——物理层 5、蓝牙协议栈——链路层 6、蓝牙协议栈——传输层 7、蓝牙协议栈——L2CAP协议 8、蓝牙协议栈——ATT协议 9、蓝牙协议栈——GATT协议 10、蓝牙通信流程分析 11、蓝牙协议栈——Bluez交叉编译 12、蓝牙调试工具汇总

Donge's Blog 1万+

使用 ant 让你愉快编程(1)

[首页, 上一页, 下一页] 使用 ant 让你愉快编程已经有无数的文章介绍过 ant 了, 我就不再介绍 ant 的安装,配置了. 每个使用 ant 的朋友都有一套自己的组织方式, 现在我把我的方式写出来供大家参考, 也免得自己忘记. 1  目录结构划分摘要: 项目目录结构及其说明 假设你有一个工作目录为: /home/camry/work, 以下简称 work. 为

寻道客 9989

STM32Cube高效开发教程<高级篇><FreeRTOS>(一)-----FreeRTOS基础

一、 FreeRTOS概述声明:本人水平有限,博客可能存在部分错误的地方,请广大读者谅解并向本人反馈错误。本专栏博客参考《STM32Cube高效开发教程(高级篇)》,有意向的读者可以购买正版书籍辅助学习,本书籍由王维波老师、鄢志丹老师、王钊老师倾力打造,书籍内容干货满满。写在前面:今天就算正式开始高级篇的博客编写了,我本人也是第一次学习FreeRTOS,所以整体的进度会比较慢,博客更新可能不太会及时,希望大家原谅。一、 FreeRTOS概述。

我的博客 1845

基于深度学习的图像修复系统,GAN图像修复,图像修复算法研究,并实现系统登录和注册,全网独发

近年来,深度学习已成为计算机视觉领域的研究热点,基于深度学习的图像修复技术弥补了传统修复方法长期存在的不足,显著提高了生成结果的质量。深度学习是指模仿人脑机制设计的具有深层结构的神经网络。深度学习作为一种表征学习,通过模仿人脑神经元之间的信息传递方式来学习输入数据的特征,并找到输入和输出数据之间的映射关系。通过在图像修复中应用深度学习技术,可以准确学习图像的语义信息,然后根据信息预测缺失的内容,大大克服了传统修复算法的不足,使结果更具逻辑性。

在职AI算法工程师,擅长计算机视觉,YOLO目标检测、分割等,擅长web、pyqt界面可视化,好内容持续更新中,来这里跟大家一起学习,共同进步 8261

使用 ant 让你愉快编程(3)

摘要: build.xml, build.properties2. 介绍 build.xml, build.properties. 以下为 build.xml 文件内容.xml version="1.0" encoding="ISO-8859-1"?>-- Copyright 2004 camry.wu@gmail.com This program is

Explorerwen--Javahome 904

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

使用 ant 让你愉快编程(6)

[首页, 上一页, 下一页]6  与 cvs 合作摘要: 简要介绍如何与 cvs 一起合作.很多人用 cvs 作为版本控制工具, 但是它有一点点麻烦, 就是 commit 的时候没有 -r 选项, 不能把子目录数据也传上去. 不要紧, 可以用 ant 把这个缺口补上, 只不过需要先做一些准备工作.在 work/common/template/src/ 目录下有一

寻道客 3982

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

使用 ant 让你愉快编程(5)

[首页, 上一页, 下一页]5  与 tomcat 合作摘要: 介绍 build_tomcat.xml, tomcat.xml现在介绍一下如何与 tomcat 一起合作.java 的程序很大部分都涉及 web, 自己测试时使用 tomcat 还是很方便的.在 work/common/ 下的 build_tomcat.xml, tomcat.xml 这两个文件

寻道客 4535

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

Ant构建工具入手、愉快的编译

Ant构建工具入手前面学习了手工的方式编译、打包为jar,,,, 实际项目开发中每次都这样就太麻烦了,所以我们需要一些能帮助我们快速构建的工具。 比如 Ant、Maven、Gradle。我们现在来学习其中之一:Ant http://ant.apache.org 下载地址: http://ant.apache.org/bindownload.cgi 我们这里下载1.10.1版本(jkd要求

7683

使用 ant 让你愉快编程(4)

摘要: checkstyle_checks.xml, java.header现在已经有了目录结构, 有了 build_common.xml, common.xml, usage.txt,build.xml, build.properties 等文件, 已经可以完成大部分任务了.现在介绍如何进行辅助任务, 比如代码检查.代码检查在 build_common.xml 中已经有这个任务了, 但是还需要两

Explorerwen--Javahome 913

创建Vue+TS+Ant Design of Vue 项目

创建Vue+TS+Ant Design of Vue 项目 cd vue-ts-ant-demo npm run serve npm install ant-design-vue@next --save npm install babel-plugin-import --save-dev 使用VS Code打开 新建plugins\Ant\index.ts import { Button,Input,

Evan Liu的博客 1001

ant android 打包 过程,ant打包完美流程

1.配置ant打包所需的环境变量(事先配置好Java,Android的环境变量)---这个不会请自行百度.or google2.解压ant,比如解压到D:\ant3.我的电脑->属性->高级->环境变量4.系统变量新建ANT_ HMOE,变量值为d:\ant5.系统变量新建或修改Path,将%ANT_HOME%\bin;添加到环境变量的path中去,(注意以上路径均为反斜杠 )6...

weixin_39989159的博客 400

Ant Design Happy Work Theme 使用教程

Ant Design Happy Work Theme 使用教程 1、项目介绍 Ant Design Happy Work Theme 是一个基于 Ant Design 的主题库,旨在为开发者提供一个轻松愉快的工作环境。该项目通过提供一系列的 UI 组件和主题配置,帮助开发者快速构建具有良好用户体验的应用程序。Ant Design Happy Work Theme 是开源的,遵循 MIT 许可证,...

gitblog_00008的博客 795
上一篇: 使用 ant 让你愉快编程(1)
下一篇: 使用 ant 让你愉快编程(3)
Explorerwen
博客等级 码龄23年 4粉丝 41原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值