编译Java文件替换aar中的class文件

题目:
有一个aar中一个FirstClass.java文件需要替换

  • 将aar文件复制一份, 后缀改成.zip
  • 解压后提取classes.jar, 可以用360压缩解压
  • classes.jar改成.zip解压后得到解压后的文件夹tempFolderClasses
  • 通过javac -cp .:classes1.jar;classes2.jar;classes3.jar com/myt/mediapipeaar/FirstClass.java得到Java同目录下的class文件,可能需要指定多个jar文件, 这一步的目的是将FirstClass编译成class, 因为编译涉及到链接到其他Java类, 所以需要指定编译环境中需要的jar, 多个jar使用分号隔开, 比如
  • 将得到的class文件放到第三步文件夹tempFolderClasses内根据包名的特定目录下
  • 通过jar cvf newClasses.jar -C tempFolderClasses/ .(注意斜杠后面加空格与.)命令将文件夹编译成newClasses.jar文件,然后改名成classes.jar文件
  • 将原来的zip文件使用解压工具查看,并使用解压工具替换其中的classes.jar文件,这个操作在不解压的前提下操作, 360压缩软件预览zip文件是可以通过右键选择这个功能.
  • 将修改后的zip文件改成aar文件
  • 完成

你可能感兴趣的:(java,jvm,jar)