当前位置: 首页 > 工具软件 > cp-class > 使用案例 >

java -cp -classpath 引用多个jar的方法

洪鸿博
2023-12-01

原来一直用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>
 
 

 类似资料: