我认为这是一个非常简单的问题,但我是新手,不知道该怎么做。所以我在我的一个项目中添加了一个外部jar文件,并且能够使用JAD反编译类来查看一些类文件,我想在同一个JAR文件中的一个目录中添加一个新类,编译它并更新jar文件。我在谷歌搜索,我提出了像'ANT构建文件'之类的东西,但不确定它是如何工作的?
谢谢!
答案 0 :(得分:1)
首先,我将检查该JAR的开发者是否为类提供了源。这降低了JAD无法完全反编译所有类信息的可能性。
但是,一旦你拥有了所有.java文件(包括你改变或添加的类),你就可以让eclipse按如下方式构建jar文件:
1。)编译.java文件(Project - > clean ..)
2。)文件 - >出口 - > Java - > Jar文件(单击下一步)
3.)选择属于jar的任何内容,输入名称并单击“完成”(注意用于导出生成的类文件和资源的复选框)。
关于Ant / Maven和东西:这些只是帮助你的工具。通过打开控制台并使用javac.exe编译可以存档的相同结果可以使用ant或maven来编译类。它只是一个配置问题。
我建议你在这里跳过Ant并在5分钟教程中直接进行Maven :)
答案 1 :(得分:0)
你的方法有效。但是你可以有两个具有相同名称和包的类。这将删除更新jar文件的必要性。
您必须设置加载顺序以确保将使用新的修改版本而不是jar文件中的版本。 Possible to use two java classes with same name and same package?
在任何tweak和类加载器之前,测试这种方法,可能是默认的类加载器行为会做你想要的。