2012-07-10 127 views
0

我在創建自定義任務時,在創建該自定義任務時,我面臨ExceptionInInitializer異常。 我已將jdom-2.0.2.jar放入我的ant lib目錄中,以便自定義任務能夠成功編譯。 下面是我的自定義任務的代碼創建ant自定義任務時發生ExceptionInInitializerError

import java.io.*; 
import org.apache.tools.ant.BuildException; 
import org.apache.tools.ant.Task; 
import org.jdom2.Document; 
import org.jdom2.Element; 
import org.jdom2.JDOMException; 
import org.jdom2.input.SAXBuilder; 
import org.jdom2.output.Format; 
import org.jdom2.output.XMLOutputter; 

public class Demo extends Task { 
    private String init; 
    @Override 
    public void execute() throws BuildException { 
     if(!init.isEmpty() && init!=null){ 
      display(); 
     }else{ 
      throw new BuildException("Please enter attribute init"); 
     } 
    } 
    public void setInit(String init){ 
     this.init=init; 
    } 
    public void display(){ 
     System.out.println("init value is "+init); 
     try { 
      SAXBuilder saxBuilder = new SAXBuilder(); 
      } catch (Exception e) { 
       e.printStackTrace(); 
       throw new BuildException("JDOMException caught"); 
      } 
    } 
} 

這是我的Ant文件

<project name="XMLUpdate" default="main" basedir="."> 
    <target name="main" depends="compile,jar,runtask"> 
    </target> 
    <target name="compile"> 
     <javac srcdir="." destdir="."/>  
    </target> 
    <target name="jar"> 
    <jar destfile="./Demo.jar" basedir="." includes="*.class"/> 
    </target> 
    <target name="runtask"> 
     <taskdef name="dem" classname="Demo"/> 
     <dem init="BOM.xml" /> 
    </target> 
</project> 

我面對ExceptionInInitializer例外 enter image description here

我推測錯誤時,編譯器解析撞線

SAXBuilder saxBuilder = new SAXBuilder(); 

老實說,迄今爲止我還沒有在java中遇到過這個異常。這裏有什麼問題?

+0

而不是捕獲異常,在這種情況下,爲了調試的目的,改變捕獲Throwable(錯誤的不是例外,並因此會通過其他方式)。這至少會爲您從哪裏開始尋找更好的診斷。 – Crollster 2012-07-10 08:16:53

+0

請發佈整個堆棧跟蹤。我想,它可以通過調整螞蟻日誌記錄級別來獲得。 – Vadzim 2012-07-10 12:04:42

回答

1

我遇到了同樣的問題,並根據here

只需使用解決了這個問題:

SAXBuilder saxBuilder = new SAXBuilder(new XMLReaderSAX2Factory(false, "org.apache.xerces.parsers.SAXParser")); 

,而不是無參數的構造函數。

相關問題