原来一直用eclipse开发项目,运行java项目一个图形化操作就可以了。
后来一些小测试程序需要直接以java命令行运行。
如果小测试程序引用了一个或两个jar包。直接用java -cp 或者java -classpath 就可以。 -cp和-classpath是一样的功能,-cp是简写
例如: java -cp E:\lib\test.jar;. lee.PersonManager
以上命令 -cp 后的路径是所引用的jar包路径,可以为绝对路径,也可以为相对路径。多个路径之间用英文分号间隔,不要忘了把代表当前路径的点加上。
lee.PersonManager 是将要运行的主程序,lee是包名,PersonManager 是主类名
如果只有一个引用jar的话 需指定关联jar的classpath javac -cp jars 类 如果多个文件,这个是没法用命令行动态编译的 除非你一个个指定
一个个指定的话也太麻烦了。
所以我们需要用ant来编译和运行java小项目。
ant的管理文件为build.xml
例如:<?xml version="1.0" encoding="GBK"?> <project name="hibernate" basedir="." default=""> <property name="src" value="src"/> <property name="dest" value="classes"/> <path id="classpath"> <fileset dir="../../../lib"> <include name="**/*.jar"/> </fileset> <pathelement path="${dest}"/> </path> <target name="compile" description="Compile all source code"> <delete dir="${dest}"/> <mkdir dir="${dest}"/> <copy todir="${dest}"> <fileset dir="${src}"> <exclude name="**/*.java"/> </fileset> </copy> <javac destdir="${dest}" debug="true" includeantruntime="yes" deprecation="false" optimize="false" failοnerrοr="true"> <src path="${src}"/> <classpath refid="classpath"/> </javac> </target> <target name="run" description="Run the main class" depends="compile"> <java classname="lee.PersonManager" fork="yes" failοnerrοr="true"> <classpath refid="classpath"/> </java> </target> </project>