Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/eclipse/8.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
Eclipse 如何将修补程序应用于Java项目?_Eclipse_Patch - Fatal编程技术网

Eclipse 如何将修补程序应用于Java项目?

Eclipse 如何将修补程序应用于Java项目?,eclipse,patch,Eclipse,Patch,该补丁适用于nutch 0.9: 我应该如何正确应用补丁程序 操作系统是windows XP 更具体地说,我使用eclipse调试一个nutch项目 这是我的审判: D:\nutch-0.9.bak>patch -p0 < nutch_0.9_OR.patch Hmm... Looks like an ed script to me... (Patch is indented 5 spaces.) The text leading up to this was: --------

该补丁适用于nutch 0.9:

我应该如何正确应用补丁程序

操作系统是windows XP

更具体地说,我使用eclipse调试一个nutch项目

这是我的审判:

D:\nutch-0.9.bak>patch -p0 < nutch_0.9_OR.patch
Hmm...  Looks like an ed script to me...
(Patch is indented 5 spaces.)
The text leading up to this was:
--------------------------
|diff -rBNu src.orig/java/org/apache/nutch/analysis/NutchAnalysisConstants.java src/java/org/apache/nutch/analysis/NutchAnalysisConstants.java
|--- src.orig/java/org/apache/nutch/analysis/NutchAnalysisConstants.java        2009-03-10 11:34:01.000000000 -0700
|+++ src/java/org/apache/nutch/analysis/NutchAnalysisConstants.java     2009-03-10 14:11:55.000000000 -0700
|@@ -4,30 +4,34 @@
| public interface NutchAnalysisConstants {
|
|   int EOF = 0;
|-  int WORD = 1;
|-  int ACRONYM = 2;
|-  int SIGRAM = 3;
|-  int IRREGULAR_WORD = 4;
|-  int C_PLUS_PLUS = 5;
|-  int C_SHARP = 6;
|-  int PLUS = 7;
|-  int MINUS = 8;
|-  int QUOTE = 9;
|-  int COLON = 10;
|-  int SLASH = 11;
|-  int DOT = 12;
|-  int ATSIGN = 13;
|-  int APOSTROPHE = 14;
|-  int WHITE = 15;
|-  int WORD_PUNCT = 16;
|-  int LETTER = 17;
|-  int CJK = 18;
|-  int DIGIT = 19;
|+  int QOR = 1;
|+  int WORD = 2;
|+  int ACRONYM = 3;
|+  int SIGRAM = 4;
|+  int IRREGULAR_WORD = 5;
|+  int C_PLUS_PLUS = 6;
|+  int C_SHARP = 7;
|+  int PLUS = 8;
|+  int MINUS = 9;
|+  int QUOTE = 10;
|+  int COLON = 11;
|+  int SLASH = 12;
|+  int LPAREN = 13;
|+  int RPAREN = 14;
|+  int DOT = 15;
|+  int ATSIGN = 16;
|+  int APOSTROPHE = 17;
|+  int WHITE = 18;
|+  int WORD_PUNCT = 19;
|+  int LETTER = 20;
|+  int CJK = 21;
|+  int DIGIT = 22;
|
|   int DEFAULT = 0;
|
|   String[] tokenImage = {
|     "<EOF>",
|+    "\"OR\"",
|     "<WORD>",
|     "<ACRONYM>",
|     "<SIGRAM>",
|@@ -39,6 +43,8 @@
|     "\"\\\"\"",
|     "\":\"",
|     "\"/\"",
|+    "\"(\"",
|+    "\")\"",
|     "\".\"",
|     "\"@\"",
|     "\"\\\'\"",
|diff -rBNu src.orig/java/org/apache/nutch/analysis/NutchAnalysis.java src/java/org/apache/nutch/analysis/NutchAnalysis.java
|--- src.orig/java/org/apache/nutch/analysis/NutchAnalysis.java 2009-03-10 11:34:01.000000000 -0700
|+++ src/java/org/apache/nutch/analysis/NutchAnalysis.java      2009-03-10 14:11:55.000000000 -0700
|@@ -56,7 +56,11 @@
|           queryString, (analyzer != null) ? analyzer : new NutchDocumentAnalyzer(conf));
|     parser.queryString = queryString;
|     parser.queryFilters = new QueryFilters(conf);
|-    return parser.parse(conf);
|+    try {
|+      return parser.parse(conf);
|+    } catch (ParseException pe) {
|+      throw new IOException("Parse exception: " + pe);
|+    }
|   }
|
|   /** For debugging. */
|@@ -77,44 +81,60 @@
|   String field;
|   boolean stop;
|   boolean prohibited;
|+  boolean required;
|     nonOpOrTerm();
|     label_1:
--------------------------
File to patch:
D:\nutch-0.9.bak>patch-p0
  • 您需要原始源代码(在给定版本!)
  • 您需要修补程序Unix实用程序(我有一个Windows的副本,随我珍贵的UnxUtils一起提供,谷歌这个名称可以找到SourceForge项目)。哦,好吧,只是为了确保名称正确:
  • 应用补丁程序后,它将更改源
  • 你编译这个项目
  • 你有吗?安装它会给你一个patch.exe,你可以使用上面的(和一吨其他非常有用的东西)

    您可以使用以下方法应用修补程序:

    patch originalfile -i patchfile.patch -o updatedfile 
    

    第一:备份你的代码

    第二:你确实备份了你的代码,不是吗?8-)

    三:

    cd \path\to\nutch
    patch -p0 < nutch_0.9_OR.patch
    
    cd\path\to\nutch
    贴片-p0
    既然您提到了Eclipse-右键单击项目,进入团队->应用补丁。

    我假设如下:

    • 安装在C:\UnxUtils中的UnxUtils
    • PATH变量中包含“C:\unxutils\bin”和“C:\unxutils\usr\local\wbin”
    • C:\Nutch-0.9中的Nutch文件
    • nutch_0.9_或.patch已转换为windows行分隔符,否则将出现类似以下错误“断言失败:hunk,file patch.c,第321行”
    • nutch_0.9_或.patch已复制到C:\nutch-0.9
    然后打开一个命令行 cd C:\nutch-0.9 patch.exe-p0-u-i nutch_0.9_或.patch


    完成!

    您应该右键单击项目、团队/应用补丁


    向导的第三步(查看修补程序)包含一个补丁内容部分,其中列出了修改过的源文件。

    但该补丁将修改多个文件。但我的问题是如何应用此补丁?我已经安装了该实用程序。这应该会有帮助!但我如何知道哪些文件被修改?应用补丁向导将为您完成所有操作。但我需要有文件列表如何修改?D:\nutch-0.9.bak是nutch的'src'目录所在的目录?您需要在nutch的'src'目录所在的目录中运行patch命令。