linux 下编译和运行 java 引用多个外部包

1、先要安装jdk,可以装oracle的,也可以装openjdk,建议用1.8版本的。2022年了,JDK都到更新到17,18或19了,但很多框架只支持到1.8版本。jdk这些更新起名字真有意思,从1.8跳到10几,对我们这些新手太坑了。

2、编译,如果代码引用了外包的jar包,进入当前源代码所在目录 ,用以下方法编译,会在当前目录生成一个helloworld.class文件

javac -cp "/myfirstjava/lib/*" helloworld.java

/myfirstjava/lib/* 告诉编译器在这个目录下查找引用的jar包

3、运行,进入helloworld.class所在目录,执行以下命令:

java -cp $CLASSPATH:"/myfirstjava/lib/*":./ helloworld

解释一下 $CLASSPATH:"/myfirstjava/lib/*":./,这一行是告诉java到这个类目录下找要运行的依赖文件,这里包含了三个目录,用冒号连接起来,windows的话是用分号连接

$CLASSPATH表示当前用户的CLASSPATH

"/myfirstjava/lib/*"是你引用了的那些外部JAR包所在目录

./表示当前目录,为什么要写当前目录?其实是因为如果要运行helloworld.class,就要要加上helloworld.class文件所在的目录 ,我是进入helloworld.class所在目录运行的,所以用了相对路径表示当前目录,用绝对路径应该也是可以的。

命令的最后是helloworld,为什么不是helloworld.class?我不知道。我也奇怪,java生成文件是带class的,但执行的时候不能带文件后缀。另外,java源代码的文件名要和类名一样,好奇怪。

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值