Compile error: package javax.servlet.jsp does not exist
Compile error: package javax.servlet.jsp does not exist
首先,这不是重复的 post,因为:
1.- 我在构建时没有任何 IDE、Ant 和 Maven。
2.- 我已经在寻找它,并尝试了以下给出的解决方案:Compile error: package javax.servlet does not exist.
但是,我的问题依然存在
基本上,我正在尝试导入:
import javax.servlet.jsp.JspWriter;
但在编译时我得到:
./src/tfg/lti/UI/Painter.java:4: error: package javax.servlet.jsp does not exist
import javax.servlet.jsp.JspWriter
我正在编译 class 就像下一行的第一行一样,在寻找解决方案之后,我尝试了下一个,因为用户说 link 文件给他带来了麻烦并且需要指向真实文件:
javac -Xlint -d ./Server/WEB-INF/classes/ -cp ./Server/WEB-INF/classes/:./Server/WEB-INF/jar/ ./src/tfg/lti/Config/Setup.java
javac -Xlint -d ./Server/WEB-INF/classes/ -cp ./Server/WEB-INF/classes/:./Server/WEB-INF/jar/:/usr/share/tomcat6/lib/servlet-api.jar ./src/tfg/lti/Config/Setup.java
javac -Xlint -d ./Server/WEB-INF/classes/ -cp ./Server/WEB-INF/classes/:./Server/WEB-INF/jar/:/usr/share/java/servlet-api.jar ./src/tfg/lti/Config/Setup.java
javac -Xlint -d ./Server/WEB-INF/classes/ -cp ./Server/WEB-INF/classes/:./Server/WEB-INF/jar/:/usr/share/java/servlet-api-2.5.jar ./src/tfg/lti/Config/Setup.java
javac -Xlint -d ./Server/WEB-INF/classes/ -cp ./Server/WEB-INF/classes/:./Server/WEB-INF/jar/:/usr/share/java/servlet-api-2.4.jar ./src/tfg/lti/Config/Setup.java
如您所见,我尝试了所有可能的 link 到我为包准备的文件,但我在编译时仍然遇到错误。在那里您可以快速查看文件:
ll /usr/share/tomcat6/lib/ | grep servlet
lrwxrwxrwx 1 root root 30 jul 24 2014 servlet-api.jar -> ../../java/servlet-api-2.5.jar
ll /usr/share/java/ | grep servlet
-rw-r--r-- 1 root root 93251 oct 22 2011 servlet-api-2.4.jar
-rw-r--r-- 1 root root 88360 jul 24 2014 servlet-api-2.5.jar
lrwxrwxrwx 1 root root 19 oct 22 2011 servlet-api.jar -> servlet-api-2.4.jar
有什么想法吗?
提前致谢
更新:因为Albert告诉我在class路径中使用jsp-api,我尝试了以下的:
javac -Xlint -d ./Server/WEB-INF/classes/ -cp ./Server/WEB-INF/classes/:./Server/WEB-INF/jar/:/usr/share/tomcat6/lib/servlet-api.jar:/usr/share/tomcat6/lib/jsp-api.jar ./src/tfg/lti/Config/Setup.java
javac -Xlint -d ./Server/WEB-INF/classes/ -cp ./Server/WEB-INF/classes/:./Server/WEB-INF/jar/:/usr/share/java/servlet-api-2.4.jar:/usr/share/java/jsp-api-2.1.jar ./src/tfg/lti/Config/Setup.java
结果相同。我可以使用的文件jsp-api:
ll /usr/share/tomcat6/lib/ | grep jsp-api
lrwxrwxrwx 1 root root 26 jul 24 2014 jsp-api.jar -> ../../java/jsp-api-2.1.jar
更新 2:添加 jsp-api.jar 包含的内容(你说得对,Albert,JspWriter 就在其中)。添加一些代码(导入等)。
jsp-api-2.1.jar内容:
来自 class 的错误代码:
进口:
import java.util.Date;
import javax.servlet.jsp.JspWriter;
import java.io.IOException;
import tfg.lti.Config.TextFileWorker;
第一个函数,调用JspWriter使用的函数:
public void BuildUI(boolean periodEnabled, Date nextDeliver,
String nextDeliveryTitle, String path, JspWriter webWriter)
函数调用:
BuildLoadUI(nextDeliveryTitle, path, webWriter);
我需要工作的部分目标函数:
private void BuildLoadUI(String nextDeliveryTitle, String path,
JspWriter webWriter) throws IOException
{
TextFileWorker Reader = new TextFileWorker();
String[] fileString;
webWriter.print("<h2>Evaluación - " + nextDeliveryTitle + "</h2>" + '\n');
我认为您错过了在 classpath
中添加 lib/jsp-api.jar
,那是 类 所在的位置。
如果您使用的是 maven,请将其添加到:
<dependency>
<groupId>javax.servlet.jsp</groupId>
<artifactId>jsp-api</artifactId>
<version>2.1</version>
</dependency>
存储库中的版本应与您的相匹配
首先,这不是重复的 post,因为:
1.- 我在构建时没有任何 IDE、Ant 和 Maven。
2.- 我已经在寻找它,并尝试了以下给出的解决方案:Compile error: package javax.servlet does not exist.
但是,我的问题依然存在
基本上,我正在尝试导入:
import javax.servlet.jsp.JspWriter;
但在编译时我得到:
./src/tfg/lti/UI/Painter.java:4: error: package javax.servlet.jsp does not exist
import javax.servlet.jsp.JspWriter
我正在编译 class 就像下一行的第一行一样,在寻找解决方案之后,我尝试了下一个,因为用户说 link 文件给他带来了麻烦并且需要指向真实文件:
javac -Xlint -d ./Server/WEB-INF/classes/ -cp ./Server/WEB-INF/classes/:./Server/WEB-INF/jar/ ./src/tfg/lti/Config/Setup.java
javac -Xlint -d ./Server/WEB-INF/classes/ -cp ./Server/WEB-INF/classes/:./Server/WEB-INF/jar/:/usr/share/tomcat6/lib/servlet-api.jar ./src/tfg/lti/Config/Setup.java
javac -Xlint -d ./Server/WEB-INF/classes/ -cp ./Server/WEB-INF/classes/:./Server/WEB-INF/jar/:/usr/share/java/servlet-api.jar ./src/tfg/lti/Config/Setup.java
javac -Xlint -d ./Server/WEB-INF/classes/ -cp ./Server/WEB-INF/classes/:./Server/WEB-INF/jar/:/usr/share/java/servlet-api-2.5.jar ./src/tfg/lti/Config/Setup.java
javac -Xlint -d ./Server/WEB-INF/classes/ -cp ./Server/WEB-INF/classes/:./Server/WEB-INF/jar/:/usr/share/java/servlet-api-2.4.jar ./src/tfg/lti/Config/Setup.java
如您所见,我尝试了所有可能的 link 到我为包准备的文件,但我在编译时仍然遇到错误。在那里您可以快速查看文件:
ll /usr/share/tomcat6/lib/ | grep servlet
lrwxrwxrwx 1 root root 30 jul 24 2014 servlet-api.jar -> ../../java/servlet-api-2.5.jar
ll /usr/share/java/ | grep servlet
-rw-r--r-- 1 root root 93251 oct 22 2011 servlet-api-2.4.jar
-rw-r--r-- 1 root root 88360 jul 24 2014 servlet-api-2.5.jar
lrwxrwxrwx 1 root root 19 oct 22 2011 servlet-api.jar -> servlet-api-2.4.jar
有什么想法吗?
提前致谢
更新:因为Albert告诉我在class路径中使用jsp-api,我尝试了以下的:
javac -Xlint -d ./Server/WEB-INF/classes/ -cp ./Server/WEB-INF/classes/:./Server/WEB-INF/jar/:/usr/share/tomcat6/lib/servlet-api.jar:/usr/share/tomcat6/lib/jsp-api.jar ./src/tfg/lti/Config/Setup.java
javac -Xlint -d ./Server/WEB-INF/classes/ -cp ./Server/WEB-INF/classes/:./Server/WEB-INF/jar/:/usr/share/java/servlet-api-2.4.jar:/usr/share/java/jsp-api-2.1.jar ./src/tfg/lti/Config/Setup.java
结果相同。我可以使用的文件jsp-api:
ll /usr/share/tomcat6/lib/ | grep jsp-api
lrwxrwxrwx 1 root root 26 jul 24 2014 jsp-api.jar -> ../../java/jsp-api-2.1.jar
更新 2:添加 jsp-api.jar 包含的内容(你说得对,Albert,JspWriter 就在其中)。添加一些代码(导入等)。
jsp-api-2.1.jar内容:
来自 class 的错误代码:
进口:
import java.util.Date;
import javax.servlet.jsp.JspWriter;
import java.io.IOException;
import tfg.lti.Config.TextFileWorker;
第一个函数,调用JspWriter使用的函数:
public void BuildUI(boolean periodEnabled, Date nextDeliver,
String nextDeliveryTitle, String path, JspWriter webWriter)
函数调用:
BuildLoadUI(nextDeliveryTitle, path, webWriter);
我需要工作的部分目标函数:
private void BuildLoadUI(String nextDeliveryTitle, String path,
JspWriter webWriter) throws IOException
{
TextFileWorker Reader = new TextFileWorker();
String[] fileString;
webWriter.print("<h2>Evaluación - " + nextDeliveryTitle + "</h2>" + '\n');
我认为您错过了在 classpath
中添加 lib/jsp-api.jar
,那是 类 所在的位置。
如果您使用的是 maven,请将其添加到:
<dependency>
<groupId>javax.servlet.jsp</groupId>
<artifactId>jsp-api</artifactId>
<version>2.1</version>
</dependency>
存储库中的版本应与您的相匹配