在Windows 7中使用命令提示符设置Classpath

时间:2013-09-14 13:10:09

标签: java

我正在使用命令提示符通过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

请帮忙解决这个问题因为我陷入了这一点,我没有得到任何东西......如何前进。我需要帮助很严重:(

先谢谢

1 个答案:

答案 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