java.lang.ClassNotFoundException: 使用外部 jar 的小程序
java.lang.ClassNotFoundException: Applet using external jar
我正在使用 jsp 页面开发小程序代码。
<APPLET
id = "app"
codebase="<%=request.getContextPath()%>/lib/"
code="com.myDemo.test.RunApplet.class"
width=100
height=50
archive="myApp1.jar, myApp2.jar">
</APPLET>
我的目录结构是:
DemoProject
-- src (some classes & packeages)
-- build
-- WebContent
-- css (some css file)
-- script (some js file)
-- WEB-INF
-- jsp(some jsp file)
-- myApplet.jsp
-- lib
-- myApp1.jar
-- myApp2.jar
当我执行 myApplet.jsp 时,它会抛出错误
java.lang.ClassNotFoundException:com.myDemo.test.RunApplet.class
我也申请了
codebase = "."
codebase = "classes"
codebase = "classes/"
但仍然是 ClassNotFoundException。
您必须引用
像你一样:
archive="myApp1.jar, myApp2.jar"
注意您的 jar 在存档中的位置:
How to specify correctly codebase and archive in Java applet?
然后您必须检查所有依赖项,并一一包含它们:
解决方案 1(如果 jar 不是太多):尝试、检测异常(例如这个:com.myDemo.test)、包含 jar,等等。
您必须至少提供每个依赖项。
如果您的代码很短(applet 的原则),它会缩短下载时间。
解决方案 2:使用一些工具:jaranalyser,...
How to list dependencies of a JAR
解决方案 3:非常简单,但会产生很大的罐子:将所有东西都装在一个罐子里
请注意,WEB-INF
文件夹中的任何内容只能由后端 servlet 读取,不能 浏览器中的任何内容 运行 包括小程序[1].
如果lib
文件夹中的两个jar
仅供小程序使用,您可以将文件夹上移至webcontent
层。如果您的后端也使用它们,您将不得不复制它们或创建一个 servlet 以将它们提供给前端。
[1]What is WEB-INF used for in a Java web application?
我正在使用 jsp 页面开发小程序代码。
<APPLET
id = "app"
codebase="<%=request.getContextPath()%>/lib/"
code="com.myDemo.test.RunApplet.class"
width=100
height=50
archive="myApp1.jar, myApp2.jar">
</APPLET>
我的目录结构是:
DemoProject
-- src (some classes & packeages)
-- build
-- WebContent
-- css (some css file)
-- script (some js file)
-- WEB-INF
-- jsp(some jsp file)
-- myApplet.jsp
-- lib
-- myApp1.jar
-- myApp2.jar
当我执行 myApplet.jsp 时,它会抛出错误
java.lang.ClassNotFoundException:com.myDemo.test.RunApplet.class
我也申请了
codebase = "."
codebase = "classes"
codebase = "classes/"
但仍然是 ClassNotFoundException。
您必须引用
像你一样:
archive="myApp1.jar, myApp2.jar"
注意您的 jar 在存档中的位置:
How to specify correctly codebase and archive in Java applet?
然后您必须检查所有依赖项,并一一包含它们:
解决方案 1(如果 jar 不是太多):尝试、检测异常(例如这个:com.myDemo.test)、包含 jar,等等。
您必须至少提供每个依赖项。
如果您的代码很短(applet 的原则),它会缩短下载时间。
解决方案 2:使用一些工具:jaranalyser,...
How to list dependencies of a JAR
解决方案 3:非常简单,但会产生很大的罐子:将所有东西都装在一个罐子里
请注意,WEB-INF
文件夹中的任何内容只能由后端 servlet 读取,不能 浏览器中的任何内容 运行 包括小程序[1].
如果lib
文件夹中的两个jar
仅供小程序使用,您可以将文件夹上移至webcontent
层。如果您的后端也使用它们,您将不得不复制它们或创建一个 servlet 以将它们提供给前端。
[1]What is WEB-INF used for in a Java web application?