【发布时间】:2012-06-23 07:09:14
【问题描述】:
我有一个 jar 文件,我需要对其进行一些小改动。我删除损坏的类文件并用 JAD 反编译它们。但是在我修复它们之后,我需要重新编译。当我重新编译时,我显然会出错,因为我只编辑一个文件。但我知道您可以将修改后的类文件注入到 jar 中。 所以我的问题是:是否可以强制java简单地编译文件以便我可以重新插入它们?唯一的错误是找不到依赖项和包,但是如果我将其放回 jar 中,它会找到它们。
【问题讨论】:
-
不可能。编译器将始终拒绝生成它不能保证类型安全的代码。为此,它必须具有所有可用的依赖项。但是假设您可以运行您的 JAR,那么您就有了这些依赖项。为什么不将它们放在编译器的类路径中?
-
欢迎伊森。我不确定 fvu 是否只是发布了一个完全重复的链接(至于“强制 java 编译器”部分,这正如 Jochen 所建议的那样不可行),但我认为您应该能够将其用作答案。
标签: java compilation