猿问

Java错误:只能导入类型。XYZ解析为一个包

我收到错误:“只能导入一个类型.XYZ会解析为一个包。”


有人在这里解释了原因,但我不确定我应该做些什么来解决这个问题。仅供参考:我正在使用Eclipse。我添加了下面导入的代码。java.util。* import工作正常。


 <%@ page import="java.util.*"%>

 <%@ page import="org.eresearch.knowledgeportal.model.Category"%>

 <%@ page import="org.eresearch.knowledgeportal.dao.CategoryDao"%>


 <% 

  CategoryDao catDao = new CategoryDao();

  ArrayList<Category> catList = catDao.selectCategory();


 //

 %>

编辑:实际错误如下:


 org.apache.jasper.JasperException: Unable to compile class for JSP: 


 An error occurred at line: 7 in the generated java file

 Only a type can be imported. org.eresearch.knowledgeportal.model.Category resolves to a package


狐的传说
浏览 682回答 3
3回答

一只斗牛犬

好吧,你并没有真正提供关于你的webapp的足够细节,但我的猜测是你有一个这样的JSP:<%@ page import="java.util.*,x.y.Z"%>&nbsp;并且x.y.Z不能在类路径上找到(即不存在WEB-INF/classes于JAR之下WEB-INF/lib)。仔细检查您在Tomcat上部署的WAR是否具有以下结构:my-webapp|-- META-INF|&nbsp; &nbsp;`-- MANIFEST.MF|-- WEB-INF|&nbsp; &nbsp;|-- classes|&nbsp; &nbsp;|&nbsp; &nbsp;|-- x|&nbsp; &nbsp;|&nbsp; &nbsp;|&nbsp; &nbsp;`-- y|&nbsp; &nbsp;|&nbsp; &nbsp;|&nbsp; &nbsp; &nbsp; &nbsp;`-- Z.class|&nbsp; &nbsp;|&nbsp; &nbsp;`-- another|&nbsp; &nbsp;|&nbsp; &nbsp; &nbsp; &nbsp;`-- packagename|&nbsp; &nbsp;|&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;`-- AnotherClass.class|&nbsp; &nbsp;|-- lib|&nbsp; &nbsp;|&nbsp; &nbsp;|-- ajar.jar|&nbsp; &nbsp;|&nbsp; &nbsp;|-- bjar.jar|&nbsp; &nbsp;|&nbsp; &nbsp;`-- zjar.jar|&nbsp; &nbsp;`-- web.xml|-- a.jsp|-- b.jsp`-- index.jsp或者捆绑的JAR x.y.Z.class存在于其中WEB-INF/lib。

千巷猫影

好的,我刚解决了。在上一次导入中,我添加了一个“;” 通过复制其他代码示例。我想这是标准的行结束所需要的。所以<%@ page import="java.util.*" %><%@ page import="org.eresearch.knowledgeportal.dao.CategoryDao" %><%@ page import="org.eresearch.knowledgeportal.model.Category" %>成为&nbsp;<%@ page import="java.util.*" %>&nbsp;<%@ page import="org.eresearch.knowledgeportal.dao.CategoryDao" %>&nbsp;<%@ page import="org.eresearch.knowledgeportal.model.Category;" %>

ibeautiful

如果您将类名拼写错误或类不在类路径上,则JSP处理器会将其“解析为包”而不是它不存在。这让我疯狂,因为我一直没有看到我犯过的错字。
随时随地看视频慕课网APP

相关分类

Java
我要回答