gpt4 book ai didi

java - 找不到 javax.servlet.GenericServlet 的类文件

转载 作者:行者123 更新时间:2023-12-02 07:29:09 24 4
gpt4 key购买 nike

我已经在类->头文件中卡住了几天了!

我已经在客户端上尝试过jni http://netbeans.org/kb/docs/cnd/beginning-jni-linux.htmlhttp://ringlord.com/jni-howto.html 。它成功地从 JNI 的 (.cpp) 文件返回“hello JNI C++”。这是我的步骤:

  1. 创建 native 函数并在 client.java 中
  2. 在 Netbeans IDE 上清理并构建此 client.java,然后生成 client.class 文件
  3. javah –jni [包].[类名]
  4. 按照第一个引用方法创建一个动态库 C++ 项目,并将 client.h 放入源文件中,并将一些 hello 代码放入 (.cpp) 文件 ---> 它可以工作! <

但是,我尝试在 servlet 端执行相同的操作,但它不起作用

  1. Servlet.java->Servlet.class:好的!
  2. 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,并通过netbeans IDE->server->property->libraries->Add JAR添加以上两个(.jar)

请告诉我如何解决这个问题,非常感谢!顺便说一句,我正在使用 hessianServlet

最佳答案

NativeWrapper.java(仅在此类上运行 javah)

class NativeWrapper {
// either
static {
System.loadLibrary("MyOpenCVNative");
}
// or
public NativeWrapper() {
System.loadLibrary("MyOpenCVNative");
}
public native void callNative();
}

MyServlet.java

class MyServlet extends javax.servlet.GenericServlet {
private NativeWrapper nativeWrapper = new NativeWrapper();

public void someServletMethod() {
nativeWrapper.callNative();
}
}

关于java - 找不到 javax.servlet.GenericServlet 的类文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13157134/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com