有可能获得蚂蚁javah命令行吗?

时间:2015-04-07 17:22:17

标签: java ant javah

Ant任务:

<target name="regenerateJNIHeader" description="Re-generates the JNI header">
    <echo message="Re-generating JNI header" />
    <attrib readonly="false">
        <fileset dir="." includes="**/MyAPI*.h"/>
    </attrib>
    <javah class="com.MyAPI" force="yes" verbose="yes"/>
</target>

问题是,我对MyAPI进行了更改(添加了一个方法),但是,尽管清除了头文件和已编译的类文件,但在运行此任务时,我的新方法未添加。如果我运行javah com.MyAPI,它就能正常运行。

在执行ant任务时可以看到命令行吗?

1 个答案:

答案 0 :(得分:0)

解决了这个问题。不是我要问的,但我找到了我需要的信息。

我将ant命令行设置为-v(详细),打印出更多信息。在输出中,我看到了类路径,我没有设置。将classpath属性添加到javah任务并将其设置为".",现在生成的标头包含我的新方法。

我猜想,尽管没有在类路径中明确提到它(在javah任务详细输出中),但它一定是在我放在$JAVA_HOME/jre/lib/ext中的jar中寻找指定的类