2013-02-24 24 views
0

我使用像這樣的ANT buildscript:JAVAH NullPointerException異常,而在Eclipse中使用ANT靛藍

<project basedir=".."> 
<property name="src" location="src"/> 
<property name="classes" location="classes" /> 
<property name="jnifiles" location="jnifiles" /> 

<target name="init"> 
    <mkdir dir="${classes}" /> 
    <mkdir dir="${jnifiles}" /> 
</target> 

<target name="compile" 
    description="compile the source " > 
    <javac srcdir="${src}" destdir="${classes}" includeantruntime="false" /> 
</target> 

<target name="generate-jni"> 
    <javah destdir="${jnifiles}" > 
     <class name="com.example.ExecJNI" /> 
    </javah> 
</target> 

<target name="clean" 
    description="clean up" > 
    <delete dir="${classes}"/> 
    <delete dir="${jnifiles}"/> 
</target> 

它經過清潔,init和編譯得很好,但在產生-JNI我得到出現以下錯誤:

generate-jni: 
    [javah] Exception in thread "main" java.lang.NullPointerException 
    [javah] at com.sun.tools.javah.JavahTask.run(JavahTask.java:509) 
    [javah] at com.sun.tools.javah.JavahTask.run(JavahTask.java:335) 
    [javah] at com.sun.tools.javah.Main.main(Main.java:46) 

任何人都有線索我做錯了什麼?

回答

1

您是否檢查安裝的JRE的默認版本?

我有同樣的問題也和我查Eclipse首選項安裝的JRE。 雖然我確實安裝了jdk1.7,但默認版本是jre7。 將默認版本更改爲jdk1.7後,問題就解決了。

希望這些信息對您有所幫助。