Ant 系统命令、java工程部署

简介: javac Ant的javac任务用于实现编译Java程序的功能。下面来看一个简单的例子: 首先我们建立名为antstudy的Java工程,建立src目录为源代码目录,在src目录下建立HelloWorld.java这个类文件。该类文件的内容如下: public class HelloWorld  {public static void main(String[] args)  


javac

Ant的javac任务用于实现编译Java程序的功能。下面来看一个简单的例子:
首先我们建立名为antstudy的Java工程,建立src目录为源代码目录,在src目录下建立HelloWorld.java这个类文件。该类文件的内容如下:
public class HelloWorld  {public static void main(String[] args)  {System.out.println("Hello,Amigo");} }
同时在antstudy工程的根目录下建立build.xml文件,在该文件中编译src目录下的java文件,并将编译后的class文件放入build/classes目录中,在编译前,需清除classes目录,该文件的内容如下:

<?xml version="1.0"?>
<!- javac  .java编译为.class -->
<project name="javacTest" default="compile" basedir=".">
	<target name="clean">
		<delete dir="build"/>
	</target>

	<target name="compile" depends="clean">
		<mkdir dir="build/classes"/>
		<javac srcdir="src" destdir="build/classes"/>
	</target>
</project>


java 与 jar

<?xml version="1.0"?>
<!-  java运行 与 jar打包 -->
<project name="javaTest" default="jar" basedir=".">
	<target name="clean">
		<delete dir="build"/>
	</target>
	<target name="compile" depends="clean">
		<mkdir dir="build/classes"/>
		<javac srcdir="src" destdir="build/classes"/>
	</target>
	<target name="run" depends="compile">
		<java classname="HelloWorld">
			<classpath>
				<pathelement path="build/classes"/>
			</classpath>
		</java>
	</target>
	<target name="jar" depends="run">
		<jar destfile="helloworld.jar" basedir="build/classes">
			<manifest>
				<attribute name="Main-class" value="HelloWorld"/>
			</manifest>
		</jar>
	</target>
</project>

系统命令

在target标签内嵌入exec标签即可执行系统命令。
exec标签内的arg标签有两个常用参数。
values 是一个命令参数。如果参数中有空格,但又想将它作为单独一个值,则使用此属性。
line 表示用空格分隔的多个参数列表。

windows

Windows必须加 /c,。
<?xml version="1.0" ?> 
<project name="shell" default="test_cmd" basedir="."> 
	<target name="test_cmd">
		<echo>cmd test</echo> 
		<exec executable="cmd">
		      <arg line="/c echo %date%"/>
		</exec>
		<exec executable="cmd">
			<arg line="/c dir"/>
		</exec>
	</target>
</project>
效果见图。

<?xml version="1.0" encoding="UTF-8"?>
<!-- 调用d:\yichu\1.bat 因为1.bat使用了相对路径,而ant又实现不了cd命令,所以ant自己拼凑一个bat >为大于号的转义符 -->
<project name="deploy" default="run">
	<target name="run"  >
	<exec executable="cmd" description="试验 cd 用法">  
			<arg value="/c  echo cd d:\yichu\ >  temp.bat"/>
	</exec>
	<exec executable="cmd" description="试验 cd 用法">  
			<arg value="/c echo call  1.bat >>  temp.bat  "/>
	</exec>
	<exec executable="cmd" description="试验 cd 用法">  
			<arg value="/c  temp.bat"/>
	</exec>
	</target>
</project>

<exec dir="c:\cefclient_final\" executable="c:\cefclient_final\cefsimple.exe"   spawn="true"/> 
上面一行的意思是在dir目录下执行executable程序,不管它什么时候结束,此行exec语句都退出,相当于异步调用。

linux

linux必须加 –c 。

目录
相关文章
|
2天前
|
JavaScript Java BI
Java毕设之新生报到系统的设计与实现
Java毕设之新生报到系统的设计与实现
10 3
|
1天前
|
监控 前端开发 Java
Java基于B/S医院绩效考核管理平台系统源码 医院智慧绩效管理系统源码
医院绩效考核系统是一个关键的管理工具,旨在评估和优化医院内部各部门、科室和员工的绩效。一个有效的绩效考核系统不仅能帮助医院实现其战略目标,还能提升医疗服务质量,增强患者满意度,并促进员工的专业成长
8 0
|
1天前
|
Java 云计算
Java智能区域医院云HIS系统SaaS源码
云HIS提供标准化、信息化、可共享的医疗信息管理系统,实现医患事务管理和临床诊疗管理等标准医疗管理信息系统的功能。优化就医、管理流程,提升患者满意度、基层首诊率,通过信息共享、辅助诊疗等手段,提高基层医生的服务能力构建和谐的基层医患关系。
15 2
|
2天前
|
前端开发 Java 关系型数据库
Java医院绩效考核系统源码B/S架构+springboot三级公立医院绩效考核系统源码 医院综合绩效核算系统源码
作为医院用综合绩效核算系统,系统需要和his系统进行对接,按照设定周期,从his系统获取医院科室和医生、护士、其他人员工作量,对没有录入信息化系统的工作量,绩效考核系统设有手工录入功能(可以批量导入),对获取的数据系统按照设定的公式进行汇算,且设置审核机制,可以退回修正,系统功能强大,完全模拟医院实际绩效核算过程,且每步核算都可以进行调整和参数设置,能适应医院多种绩效核算方式。
18 2
|
2天前
|
JavaScript 小程序 Java
基于java的少儿编程网上报名系统
基于java的少儿编程网上报名系统
10 2
|
2天前
|
JavaScript 小程序 Java
Java毕设之在线医疗服务系统的设计与实现
Java毕设之在线医疗服务系统的设计与实现
7 3
|
2天前
|
JavaScript 小程序 Java
Java毕设之KTV点歌系统
Java毕设之KTV点歌系统
9 2
|
2天前
|
小程序 Java 关系型数据库
Java毕设之农产品供销服务系统
Java毕设之农产品供销服务系统
7 2
|
2天前
|
监控 安全 Java
基于java的商店积分管理系统的设计与实现
基于java的商店积分管理系统的设计与实现
10 2
|
2天前
|
数据可视化 Java 关系型数据库
JAVA毕设之基于SSM学生智能选课系统
JAVA毕设之基于SSM学生智能选课系统
11 1