在Idea中调试ant应用
Ant调试
Ant调试
ant 是一种非常方便的打包,部署的工具,通过ant,可以一键构建整个项目,虽然MVN也支持这种功能,但是MVN混杂了package管理的功能,并且不是很自由,学习成本比较高。
通常,我们调试ant构成的程序,是通过远程调试的功能,来实现的,缺点就是不能在ide中的console中显示标准输出输入流,比较麻烦。
本文档将介绍如何通过ant在idea中构建一个Hello World程序,并且能进行调试这个Hello World。
主要的思想:通过ant的jar包中的main函数来启动一个本地application, 这样子就可以在idea的Console中看到输出流了.
项目结构
通过Idea创建一个普通的Java应用程序.

ant/
需要去apache ant 网站下载最新的ant程序, 然后解压开来, 复制lib下所有的jar包到ant/目录下, 然后把ant/目录设置为项目的依赖jars.

build.xml
build.xml 是用来描述项目是如何编译以及运行的.

注意: java 指令中不能包含fork="yes".
配置启动器

注意, 我们需要关闭Make这个选项, 因为我们已经通过ant来编译项目了.

到此我们基本完成了配置,
接着我们来Debug 项目, 注意, 在Main函数下断点.

这时候, 我们可能遇到无法查询到javac的错误报告, 这个是因为Idea 在SDK配置的时候, 没有把SDK/lib/tools.jar 添加到环境中, 所以我们需要手动添加这个JAR包.

这样子, 运行环境中就包含了javac的包了(tools.jar).
我们再次运行SHIFT+F9.

成功运行到断点, 之后就和普通的Java应用一样了.

项目下载地址:http://files.cnblogs.com/files/tickobject/Test.zip
总结
通过ant, 我们可以自定义目录结构, 编译过程, 部署过程, 而不必依赖IDE的标准结构, 代价就是需要熟悉ant的一些常用指令, 以及标准目录结构(这是为了build出的项目能在目标环境中运行), 如webapp的war结构等.
idea通过一些简单的配置, 就可以完成使用ant来构建项目, 以及在idea中调试程序的功能.
而主要的思想就是ant是纯java的应用, 当然可以通过idea来引导ant的Main函数, 然后进一步的debug到我们的目标程序.
在Idea中调试ant应用的更多相关文章
- 在Eclipse中集成Ant配置
提要:本文将向你展示如何使用Eclipse设置为Ant所用的属性值和环境变量,并简要分析如何配置Ant编辑器以便从Eclipse内部操作Ant文件. 一. 修改Ant Classpath 在使用一个可 ...
- Firebug中调试中的js脚本中中文内容显示为乱码
Firebug中调试中的js脚本中中文内容显示为乱码 设置 页面 UFT-8 编码没用, 解决方法:点击 "Firebug"工具栏 中的"选项"---" ...
- 在IIS Express中调试时无法读取配置文件 错误
在IIS Express中调试代码时,如果出现"无法读取配置文件"的问题(如图),这种情况是IIS Express的"applicationhost.config&quo ...
- 在Chrome+Visual Studio中调试asp.net程序很慢的问题(Firefox也有类似问题)
在Chrome+Visual Studio中调试asp.net程序很慢的问题(Firefox也有类似问题) 今天开始起在Chrome中调试,发现问题主要出在菜单栏(layout文件)中,google了 ...
- 在 Chrome 中调试 Android 浏览器
最近需要使用 Chrome Developer Tools 调试 Android 浏览器,但是官方指南并不是很好使,经过一番折腾,终于调试成功了,在此把经验分享给需要的朋友. Chrome Devel ...
- 在Android开发中使用Ant 一:环境的搭建及入门
配置Ant环境 下载Ant:http://ant.apache.org/bindownload.cgi 在windows上应该选择zip压缩包,将zip压缩包解压到一个目录. 打开系统环境变量,在系统 ...
- java系列: 在eclipse中调试时,输入的jsp或者servlet页面的地址要区分大小写
比如在当前web工程中有一个jsp页面的名字是: Welcome.jsp 在eclipse中调试时,如果在浏览器中输入: http://localhost:8080/MavenWeb/welcome. ...
- vs2010 开发过程中调试时 有错误不中断
出现这个的原因是调试的设置有问题,修改下设置就好了. 修改方法:点击上边工具栏中 调试--异常 出现以下页面,把引发那列复选框全部勾上,点击确定就好了.
- Ant学习笔记(2) 在Eclipse中使用Ant
Eclipse默认提供了对Ant的支持,在Eclipse中不需要安装任何插件就能直接编辑和运行Ant.Eclipse中包含了一个Ant脚本编辑器,Ant脚本编辑器提供了对Ant脚本的语法搞来高亮.自动 ...
随机推荐
- about greenplum collection tool
three collection tool for greenplum:pstack.strace.gcore. ...
- Find a way (BFS)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2612 BFS搜索 目标地 并记录下来 之后再判断两段路程之和 代码: #include < ...
- Linux命令学习篇0——原产地
昨天在用curl发送简单的HTTP请求做測试的时候发现自己每次使用的时候都是在网络上查看别人的演示样例才干想起来怎么用,这样效率太低了.尽管有网络依旧在,可是总感觉不是被自己掌握着,心里不踏实,回忆起 ...
- HDU1203_I NEED A OFFER!【01背包】
I NEED A OFFER! Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) ...
- XMLHttpRequest创建对象
首先,介绍一下XMLHttpRequest对象,我们都知道Ajax这不是一个简单的技术,但一些技术的融合.XMLHttpRequest这是Ajax中最为核心的技术.假设没有XMLHttpRequest ...
- 10分钟学会Linux
10分钟学会Linux有点夸张,可是能够让一个新手初步熟悉Linux中最重要最主要的知识,本文翻译的英文网页在众多Linux入门学习的资料中还是很不错的. 英文地址:http://freeengine ...
- C#命令模式-设计模式学习
命令模式(Command Pattern) 概述 在软件系统中,“行为请求者”与“行为实现者”通常呈现一种“紧耦合”.但在某些场合,比如要对行为进行“记录.撤销/重做.事务”等处理,这种无法抵御变 ...
- 选择29部分有用jQuery应用程序插件(免费点数下载)
免积分下载:http://download.csdn.net/detail/yangwei19680827/7238711 原文地址:http://www.cnblogs.com/sxwgf/p/36 ...
- winhec
#winhec# 开发人员刷屏看点 (视频) 今天大家已经被winhec刷屏了,本来不想写这篇了,但看了所有的文章,大家关注的都是windows 10的那些新功能,小米win10刷机,联想千元手机,小 ...
- EasyUI combox实现联动
多的时间将被用于combox联动效应.一个选择combox的值自己主动出这值有关相应的其他信息,例如省市联动.最近,我刚刚会见了班似要求,随着EasyUI combobox 控制完成.假设ASP.N ...