我跟随this tutorial关于为Mac OS X创建JNI文件。本教程是为NetBeans编写的,但我尝试使用Eclipse进行操作。不幸的是,这导致我陷入了步骤4.1.3,即使用ant:
生成.h文件通过添加来修改Netbeans项目的build.xml文件 在结束标记之前跟随:
<target name="-post-compile">
<javah
destdir="./build"
force="yes"
class="ca.weblite.jniexample.NSSavePanel"
classpath="./build/classes"
/> </target>
首先,Eclipse项目似乎默认不包含build.xml文件,因此我使用these instructions生成一个。然后我添加了如上所示的命令。但是当我使用ant脚本构建时,.h文件无法构建。没有生成与此相关的错误消息。
我认为原因是因为Eclipse项目没有&#34; ./ build&#34;文件夹如示例所示,但我不知道该放在哪里。请问有谁可以告诉我如何解决这个问题?
答案 0 :(得分:1)
首先,让我们假设你的Eclipse项目文件夹结构是这样的:
src/ (source files)
bin/ (compiled class files)
应在Java Build Path中配置上述文件夹(请参阅Project&gt; Properties)。您需要自己创建以下文件夹和文件(只需右键单击&gt;新...)。
build/ (build products)
build.xml (build script)
在每个bin
和src
文件夹中,您应该有一个子目录结构,如:
ca
|--weblite
|--jniexample
src / ca / weblite / jniexample / NSSavePanel.java应该有一个源文件。在bin / ca / weblite / jniexample / NSSavePanel.class中应该有一个已编译的类文件。
您的build.xml文件应如下所示:
<project name="Build" default="-post-compile">
<target name="-post-compile">
<javah destdir="./build" force="yes" class="ca.weblite.jniexample.NSSavePanel" classpath="./bin" />
</target>
</project>
执行构建脚本后,您应该在build / ca_weblite_jniexampe_NSSavePanel.h上看到一个文件。