在这种情况下,我必须使用7-zip手动将.class文件从一个(旧).jar复制到另一个(新).jar以进行开发/测试部署。由于它是一个共享环境,因此我必须这样做...
这是一个非常低效的过程,我希望使用Python来提供帮助。我有管理所有类路径的逻辑。我只需要知道在保持文件夹结构的同时将文件从一个jar复制到另一个jar的过程即可。
这是一个基本示例,我要复制最近编译的myWork.class
文件夹结构示例
类似的东西(伪代码)
inFile = 'C://myWork/myProject/dist/my-jar.jar/com/project/comp/MyWork.class'
pathToJarClassThatNeedUpdated = 'C://myWork/toDeployFolder/my-jar.jar/com/project/comp/MyWork.class'
writeOrCopy(inFile , pathToJarClassThatNeedUpdated )
或这样
pathToNewJar = "C://myWork/myProject/dist/my-jar.jar"
pathToOldJar = "C://myWork/toDeployFolder/my-jar.jar"
subPathToClassFiles = "com/project/comp/MyWork.class"
writeOrCopy(pathToNewJar , subPathToClassFiles, pathToOldJar, subPathToClassFiles)
我已经尝试过使用ZipFile这样的方式:
with zipfile.ZipFile('C://myWork/myProject/dist/my-jar.jar', 'a') as file:
file.write("myFile.class")
但这似乎只能将文件追加到根目录,而且似乎没有办法保留类结构。
我要做的就是将一个类复制到.jar中任何位置的另一个类中。