我已经尝试了几个小时没有成功编辑我用作库的jar中的java文件。我已将资源标记为内容根和源根,但我仍然无法编辑jar中的代码。项目编译并正确运行但我需要对资源文件进行调整而不能;我已经尝试了我能想到的每个项目结构。这不可能吗?所有帮助表示赞赏。
答案 0 :(得分:3)
不建议编辑JAR文件。从再现性 1 的角度来看,最好是:
另一种方法是覆盖"您希望通过使用备用版本的资源创建另一个JAR并将其放在应用程序类路径中的更新来进行更改。
但如果这些都不适合您,您可以使用jar
命令修改JAR文件:
jar -x ...
将文件解压缩到临时目录树jar -c ....
创建新的JAR。显然,如果您不是原始签名者,使用原始密钥签署新JAR将是一个问题,但我怀疑这与您相关。
1 - 关键在于,维护代码的下一个人需要知道你对你所编辑的库JAR做了什么,以及他需要和另一个人做同样的程序JAR的版本。如果你手工完成,他别无选择,只能对原始版本和编辑版本之间的差异进行法医比较。这假设仍然可以获得原始JAR。请注意"下一个人"可能是你...在几个月或几年的时间里,当你忘记你到底做了什么时。