我已经下载了Lucene jar文件。我将它包含在我的类路径中以运行我的Lucene应用程序。
但是,我现在需要应用补丁。我应该下载Lucene源代码,应用补丁并编译..对吗?我不能再使用罐子......
感谢
PS。我还需要知道如何在java中应用补丁......终端的命令是什么?
答案 0 :(得分:2)
可能是替代方法,但创建一个全新的jar文件将是你最好的选择,IMO。解决一些微妙的问题比提供第二个jar文件以优先于某些类等要困难得多。
答案 1 :(得分:1)
我不确定我是否正确,但在我看来,应用补丁,你的纠正类必须出现在不正确的类之前的类路径上。因此,您可以制作一个包含更正类的jar,并将其放在类路径上,而不是原始的lucene jar。
答案 2 :(得分:1)
要添加类或更新现有类,您将使用相同的jar命令,但使用该-u选项。从终端尝试jar -help
。
答案 3 :(得分:1)
Jon Skeet是正确的 - 创造一个新罐子是最好的事情。您可以只将包含新.class
文件的目录树放在旧jar文件之前的类路径中,但这样很麻烦且容易出错。
要应用修补程序,请在源的根目录中使用命令patch -p<n> <patch_file.txt
。
其中<n>
是要从修补程序中的路径名中剥离以匹配源树中路径名的目录数 - 从0开始。