Java按包编译jar_java用命令行编译运行时带有包和使用外部jar包的情况

命令行编译运行Java程序时,加载指定目录中的Jar包:

解决方案一:

编译:javac -Djava.ext.dirs=./lib Test.java  或

javac -Djava.ext.dirs=D:/javacode/lib

运行:java-Djava.ext.dirs=./lib Test

【红色部分是要替换的内容】

1、 ./lib  是指存放第三方jar文件的目录。

>圆点:表示要编译运行的java文件所在的当前目录

2、 ./lib  也可以替换为带盘符的绝对路径:javac -Djava.ext.dirs=D:/javacode/lib

解决方案二:

D:\javacode>javac -cp d:/javacode/lib/jar包名称.jar; Test.java

//或者

D:\javacode>javac -cp d:/javacode/lib/jar包名称.jar; Test.java

D:\javacode>java -cp ./lib/jar包名称.jar; Test

D:\javacode>java -cp ./lib/jar包名称.jar; Test

【红色部分是要替换的内容】

运行程序时带有包:

假设两个文件:

D:\workspace\com\A.java

D:\workspace\com\B.java

两个文件都有:

package com;

如何编译运行?

进入D:\workspace路径下,输入:

javac com\A.java com\B.java -d .

红色为源文件路径,蓝色为输出路径。

则在生成两个文件:

D:\workspace\com\A.class

D:\workspace\com\B.class

注意:

-d 后面是 空格 + 点

点的意思是,在 .java 文件的根目录,为了方便也可以采用:

javac com\*.java -d .

运行时,在包路径的根目录上运行,比如:在 D:\workspace 路径下,输入:

java com.A

java com/A

如果当前路径是 C:\ 或其他路径,那么

编译:

javac -cp D:\workspace D:\workspace\com\*.java -d .

运行:

java -cp D:\workspace com.A

总结

1、把包看成是源文件的一部分,而不是一个路径,这点很重要。

2、如果不加 -cp 标志,则路径为环境变量和当前路径,如果加 -cp 标志,则路径为cp指定的路径和当前路径。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值