我已经在类->头文件中停留了几天!
我已经通过http://netbeans.org/kb/docs/cnd/beginning-jni-linux.html和http://ringlord.com/jni-howto.html在客户端上尝试了 jni 。它成功地从 JNI 的 (.cpp) 文件中返回“hello JNI C++”。这是我的步骤:
- 创建本机函数并在 client.java
- 在 Netbeans IDE 上清理并构建这个 client.java,然后生成一个 client.class 文件
- javah –jni [包].[类名]
- 像第一个参考一样创建一个动态库 C++ 项目,并将 client.h 放入源文件,并将一些 hello 代码放入 (.cpp) 文件 --->它可以工作!
但是,我尝试在 servlet 端做同样的事情,但它不起作用
- Servlet.java->Servlet.class:好的!
- Servlet.class->Servlet.h:失败!!! 错误:无法访问 javax.servlet.GenericServlet 类文件,找不到 javax.servlet.GenericServlet
以下是我迄今为止找到并尝试过的解决方案,
检查包名
sudo gedit /etc/profile,sudo gedit .bashrc,sudo /etc/environment;在它们上添加 JAVA_HOME & CLASSPATH,并获取它们以更新,然后 echo $JAVA_HOME, echo $CLASSPATH 进行验证
- 从http://www.jarfinder.com/index.php/java/info/javax.servlet.GenericServlet下载 servlet-api-6.0.14.jar & servlet-api-5.0.16.jar ,并添加以上两个( .jar) 通过 netbeans IDE->server->property->libraries->Add JAR
请告诉我如何解决这个问题,非常感谢!顺便说一句,我正在使用 hessianServlet