使用jar 命令生成.jar遇到的问题(绝对路径)

时间:2023-03-10 05:59:21
使用jar 命令生成.jar遇到的问题(绝对路径)

最近学java遇到一个问题:在使用命令行编译jar包的时候 出现了jar包里面的结构是一个电脑的绝对路径(把jar包变成zip格式后看到的)

之所以出现这个问题一个是以为 jar包会自己识别其相对路径,另外一个就是自己太懒了。

解决方法蛮简单的:

1、在terminal中输入cd 到你的package所在的位置,如你的class文件在~/Documents/output/com/test/demo.class

  你的package是com.test 你需要先 cd ~/Documents/output

2、输入 jar cf test.jar com/test/demo.class 即可,这时候你能够在~/Documents/output/ 目录底下看到你刚生成的jar包文件

(切记这时不要用鼠标将文件直接拖到命令行,因为拖到命令行的是绝对路径

  这时候你的jar包虽然生成好了但是里面的结构是有问题的)

   jar命令 会在终端当前所在的目录中寻找相对路径中的文件,所以生成的jar包里面的结构是相对路径的形式 ,

  但是如果你的jar包后面跟着一个绝对路径的话它就忽视相对路径了,也就是说你死翘翘了