我正在使用命令提示符通过Windows 7编译我的代码 - 这里有详细信息:
我像这样设置类路径:
set classpath= %classpath%;C:\java-programes\Servlet-Programing-new1\TotalUsersOnline\lib\servlet-api\*.jar;C:\java-programes\Servlet-Programing-new1\TotalUsersOnline\lib\servlet\*.jar;
然后我尝试编译我的文件,如:
javac -d ..\classe com\java\controller\LoginServlet.java
输出:
com\java\controller\LoginServlet.java:7: package javax.servlet does not exist
import javax.servlet.RequestDispatcher;
^
com\java\controller\LoginServlet.java:8: package javax.servlet does not exist
import javax.servlet.ServletException;
^
com\java\controller\LoginServlet.java:9: package javax.servlet.http does not exist
import javax.servlet.http.HttpServlet;
^
com\java\controller\LoginServlet.java:10: package javax.servlet.http does not exist
import javax.servlet.http.HttpServletRequest;
^
com\java\controller\LoginServlet.java:11: package javax.servlet.http does not exist
import javax.servlet.http.HttpServletResponse;
^
com\java\controller\LoginServlet.java:13: cannot find symbol
symbol: class HttpServlet
public class LoginServlet extends HttpServlet{
^
com\java\controller\LoginServlet.java:21: cannot find symbol
symbol : class HttpServletRequest
location: class com.java.controller.LoginServlet
public void service(HttpServletRequest request, HttpServletResponse response)
^
com\java\controller\LoginServlet.java:21: cannot find symbol
symbol : class HttpServletResponse
location: class com.java.controller.LoginServlet
public void service(HttpServletRequest request, HttpServletResponse response)
^
com\java\controller\LoginServlet.java:22: cannot find symbol
symbol : class ServletException
location: class com.java.controller.LoginServlet
throws ServletException, IOException {
^
com\java\controller\LoginServlet.java:46: cannot find symbol
symbol : class RequestDispatcher
location: class com.java.controller.LoginServlet
RequestDispatcher dispatcher = request.getRequestDispatcher("/home.jsp");
^
com\java\controller\LoginServlet.java:20: method does not override or implement a method from a supertype
@Override
之后我尝试了:
javac -classpath C:\java-programes\Servlet-Programing-new1\TotalUsersOnline\lib\servlet-api\*.jar com\java\controller\LoginServlet.java
然后我得到的输出是:
javac: invalid flag: C:\java-programes\Servlet-Programing-new1\TotalUsersOnline\lib\servlet-api\servlet-api-2.5.jar
Usage: javac <options> <source files>
use -help for a list of possible options
请帮忙解决这个问题因为我陷入了这一点,我没有得到任何东西......如何前进。我需要帮助很严重:(
先谢谢
答案 0 :(得分:1)
了解类路径通配符
类路径条目可以包含基本名称通配符, 这被认为等同于指定所有文件的列表 在扩展名为.jar或.JAR的目录中。例如, 类路径条目foo / 指定名为的目录中的所有JAR文件 FOO。简单地由*组成的类路径条目扩展为所有的列表 当前目录中的jar文件。
包含*的类路径条目与类文件不匹配。至 将类和JAR文件匹配在一个目录foo中,使用其中一个 foo; foo / *或foo / *; foo。选择的顺序决定了 foo中的类和资源在foo中的JAR文件之前加载,或者 反之亦然。
不会递归搜索子目录。例如,foo / *看起来 对于仅在foo中的JAR文件,而不是在foo / bar,foo / baz等中
这里必须阅读完整的细节,它很棒http://docs.oracle.com/javase/6/docs/technotes/tools/windows/classpath.html