Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/haskell/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 编辑jar文件_Java_Hibernate_Jar - Fatal编程技术网

Java 编辑jar文件

Java 编辑jar文件,java,hibernate,jar,Java,Hibernate,Jar,我在应用程序中使用了hibernate 3.5和spring 3.2,但现在我已经将hibernate迁移到了4.2。我有一些自定义jar,其中包含与hibernate 3.5相关的代码,即org.hibernate.classic包中的Session类,因此我需要更新保存在自定义jar中的类文件 我使用jdgui工具获取java文件,并相应地编辑它们,最后得到一个目录 包含META-INF和com文件夹。现在,如果我尝试从这个目录创建jar,同样会创建META-INF文件夹(我知道会发生这种情

我在应用程序中使用了hibernate 3.5和spring 3.2,但现在我已经将hibernate迁移到了4.2。我有一些自定义jar,其中包含与hibernate 3.5相关的代码,即org.hibernate.classic包中的Session类,因此我需要更新保存在自定义jar中的类文件

我使用jdgui工具获取java文件,并相应地编辑它们,最后得到一个目录 包含META-INFcom文件夹。现在,如果我尝试从这个目录创建jar,同样会创建META-INF文件夹(我知道会发生这种情况)。所以现在如果我打开这个jar并删除生成的META-INF文件夹(我希望我的META-INF文件夹保持完整,因为它包含依赖项),那么jar就会损坏


请让我知道替代方案。提前感谢

我不太明白:那么您用从原始jar中提取的META-INF替换生成的META-INF?您是否检查了原始META-INF内容(如清单、服务描述符等)是否没有引用任何不再存在的内容?你能详细说明一下罐子是如何损坏的吗?您会遇到哪些错误/异常?哦,那你为什么要反编译这个罐子?源代码不可用吗?是的,托马斯。我没有源代码。不知何故,我设法把所有我想要的变化,一切看起来都很好罐子。我将这些jar保存在本地maven存储库中,但eclipse中仍然无法识别它们。我认为无论我们使用多么好的工具,都不可能从类文件中获得准确的源代码。如果我错了,请纠正我。这取决于源代码和使用的工具,但有许多因素会使反编译结果与原始源代码不同(除了注释和空白更改),例如工具质量、内联常量、调试信息可能被禁用等。