【问题标题】:error while importing .java file in jsp page在jsp页面中导入.java文件时出错
【发布时间】:2013-05-07 06:08:28
【问题描述】:

我有一个包含public 类的.java 文件。它位于“网页”文件夹下(不在 web-inf 文件夹下)。

在我的 jsp 页面上,我已将其导入为:<%@ page import="packagename.javafilename;" %>

当我运行 jsp 文件时,我得到如下错误:

Unable to compile class for jsp.
Only a type can be imported. Packagename.filename resolves to a package

【问题讨论】:

  • 您在导入指令末尾缺少%,例如:<%@ page import="packagename.javafilename" %>
  • 给出准确的代码和准确的错误。你这里可能有一些错字。或者导入包,写<%@ page import="packagename.javafilename.*">

标签: java jsp


【解决方案1】:

正如 cmets 中所述,最后似乎缺少 %。这里是jsp中导入类的方法

// To import one class
<%@ page import="com.xyz.MyClass" %>

// To import multiple classes from the com.xyz package
<%@ page import="com.xyz.*" %>

【讨论】:

  • 很抱歉这是一个打字错误,我现在更正了我的问题
  • com.xyz.myclass 中的 COM 是什么?我的“abc.java”文件位于“网站”文件夹中(与 jsp 相同的位置)
  • @NachiketKamat 您是否仍然收到错字更正的错误?
  • @NachiketKamat 你也确定 packagename.javafilename 是一个类文件。根据编码约定,类名通常以大写字母开头,但包名全部小写。所以我想知道 javafilename 实际上是类还是包。
  • 答案与 Bhushan 的建议相同,但我不知道如何将 .java 文件转换为 .class 文件。
【解决方案2】:

从你的问题来看,事情不是很清楚。

首先,jsp 不能访问.java,只能访问一个.class 文件,即你必须保持你的代码编译。

其次,该类应位于 WEB-INF/classes 文件夹中或 WEB-INF/lib 文件夹中的 jar 中。

【讨论】:

  • 你能告诉我如何将我的“.java”文件转换为“.class”文件,这样我就可以将它放在 web-inf/classes 中并运行我的程序
  • 看来您是 Web 开发新手。我建议你使用 eclipse 并在其中创建一个 web 项目。它会自动编译你的java文件,你也可以通过eclipse本身在服务器上运行。
  • 如果你只是想编译java然后使用javac,请阅读更多关于如何在java中开发,因为你问的是如何编译的基本知识。
  • 从命令行编译您的 java 类或使用 Eclipse 等 IDE
  • 好的,我是通过命令行完成的,如下所示:- javac filename.java .. 现在我有了 filename.class .. 我在 web-inf 下创建了名为 classes 的新文件夹 .. 我会将此 .class 文件放在 classes 文件夹下并回复您。非常感谢
【解决方案3】:

使用这个语法:

<%@ page import="package.filename" %>

在最后一次导入中,您可能需要在 package.filename 的末尾添加一个分号。 因此,如果您有 3 个导入,那么在第 3 个导入行中,请确保输入分号:

<%@ page import="package.filename;" %>

还有一件事,确保类文件在 WEB-INF/classes 文件夹中。

【讨论】:

  • 如果您使用的是 Eclipse,那么它将负责编译文件。或者,在 CMD 中键入:javac *.java 以编译目录中存在的所有文件,然后将它们放入 WEB-INF/classes/ 文件夹中。
  • 我注意到的另一件事是 netbeans 说:- package stemm does not exist!
  • 好吧,目录结构不是它应该的样子!在 WEB-INF/classes 目录中,确保您有一个名为 stemm 的文件夹,其中应该有一个编译文件 Stemmer.class。所以,这个:/WEB-INF/classes/stemm/Stemmer.class
猜你喜欢
  • 1970-01-01
  • 2012-05-31
  • 2011-12-01
  • 1970-01-01
  • 2017-04-29
  • 2014-11-26
  • 1970-01-01
  • 2011-04-02
  • 1970-01-01
相关资源
最近更新 更多